2012/11/27 2

기본 구조 - 아키텍처

아키텍처 리눅스 커널(운영체제의 핵심)안드로이드가 리눅스를 채용한 주된 이유는 공개 운영체제라는 이유도 있지만 디바이스 드라이버의 지원이 광범위하기 때문- 백그라운드 스레드, 메모리 관리, 보안, 디바이스 드라이버 등의 저수준 관리 기능을 담당- 터치 스크린, 카메라, 무선 인터넷, 메모리, 키패드 등 대부분의 모바일 장비에 사용되는 부품의 드라이가 제공 하드웨어 추상레이어(HAL)추상레이어는 주로 커널을 통해 안드로이드가 제공하는 드라이버를 제어하는 목적으로 사용.- 표준화된 API를 제공하고 있을 뿐만 아니라 사용자 정의 컴포넌트를 추가할 수 있다. 라이브러리장비의 전반적인 속도를 결정하는 중요한 요소. 라이브러리 대부분은 C언어로 작성되어 성능이 뛰어나고 충분한 테스트를 거쳐 신뢰성이 보장- BSD..

함수의 선언과 정의의 차이점

1. 선언의 형식반환형 함수이름(매개변수들); 2. 정의의 형식반환형 함수이름(매개변수들){ 내용;} 3. 선언은 그러한 함수가 있다고 알리는 것이고 정의는 그 함수의 실제 내용을 만드는 것입니다.4. 정의는 선언을 겸합니다.5. 정의되어 있지 않은 함수를 선언하고 호출하는 코드가 포함된 프로그램을 빌드하면 컴파일은 됩니다만 링크 시에 해당 함수의 실체를 찾을 수 없으므로 링크 오류가 발생합니다.6. 함수가 정의되어 있더라도 선언되어 있지 않으면 이를 호출할 수 없습니다. 이는 컴파일 오류를 발생시킵니다.여기서 상기할 것은 정의는 선언을 겸한다고 한 것입니다.즉, 선언 또는 정의한 곳 이후의 위치에서 해당 함수를 호출할 수 있다는 의미입니다.예를 들면, 함수를 별도로 선언하는 것이 귀찮을 때 main 함..

유용한 팁 2012.11.27