article thumbnail image
Published 2017. 11. 1. 19:51

안드로이드 구조도



응용프로그램 (Applications)

  • 안드로이드 스마트폰에서 사용할 수 있는 일반적인 응용프로그램이다.
  • 웹브라우저, 달력, 구글맵, 연락처, 게임 등 사용자 입장에서 가장 많이 사용하는 앱.
  • 모두 JAVA로 제작됨.


응용프로그램 프레임워크 (Applications Framework)

  • 안드로이드 API가 존재하는 곳.
  • 애플리케이션은 API를 통해서 안드로이드 커널에 접근할 수 있다.
  • 안드로이드폰 하드웨어에 접근할 때는 JAVA에서 직접 접근하는 것이 아니라 API를 통해서만 가능하다.


안드로이드 런타임 (Android Runtime)

  • JAVA 코어 라이브러리와 달빅 가상머신 또는 아트 런타임으로 구성
  • 달빅 가상머신과 아트 런타임은 모바일 환경에 최적화되어 있어 여러 개를 동시에 구동 가능


라이브러리 (Libraries)

  • 안드로이드에서 사용되는 여러 시스템 라이브러리는 시스템 접근 때문에 JAVA가 아닌 C로 작성되어 있다.
  • 따라서, 성능이 뛰어나고 세밀한 조작 가능.


리눅스 커널(Linux Kernel)

  • 하드웨어의 운영과 관련된 저수준의 관리 기능
  • 주로, 메모리 관리, 디바이스 드라이버, 보안 등이다.
  • 안드로이드 커널로 리눅스를 채택한 이유는 오픈 소스라는 장점과 함께 카메라, 터치스크린, GPS, 자이로스코프 등 많은 스마트폰 장치를 지원하기 때문이기도 하다.



더 자세한 내용은 developer.android.com을 참고바란다.


'Mobile > Android' 카테고리의 다른 글

Session 'app': Error Installing APKs 발생시  (1) 2017.11.09
Android Studio 3.0에서 XML Layout 이슈  (0) 2017.11.06
JAVA 한글 2Byte 처리방법  (0) 2017.11.01
복사했습니다!