안드로이드 (운영 체제)
본 서비스가 제공하는 내용 및 자료가 사실임을 보증하지 않습니다. 시스템은 언제나 실수를 할 수 있습니다. 중요한 의사결정 및 법리적 해석, 금전적 의사결정에 사용하지 마십시오.
안드로이드(Android)는 스마트폰, 태블릿 PC와 같은 터치스크린 모바일 장치를 위해 디자인된 모바일 운영 체제이다. 리눅스 커널의 수정된 버전을 기반으로 하며, 운영 체제와 미들웨어, 사용자 인터페이스, 표준 응용 프로그램을 포함하는 소프트웨어 스택으로 구성된다. 구글이 안드로이드 사를 인수한 후 오픈 핸드셋 얼라이언스(OHA)를 통해 개발을 이어가고 있으며, 소스 코드는 아파치 v2 라이선스에 따라 오픈 소스로 배포된다.
개요
안드로이드는 다양한 폼 팩터를 사용하는 기기를 위한 운영 체제이다. 리눅스 커널 위에서 동작하며, 웹 브라우저, 이메일 클라이언트, SMS/MMS 서비스 등 표준 응용 프로그램을 포함한다. 구글은 안드로이드의 소스 코드를 공개하여 기업이나 사용자가 독자적으로 프로그램을 개발하고 탑재할 수 있도록 지원한다.
역사
2005년 구글이 안드로이드 사를 인수하였다. 이후 2007년 11월, 구글은 안드로이드 플랫폼을 휴대용 장치 운영 체제로서 무료 공개한다고 발표하였다. 이와 함께 하드웨어, 소프트웨어, 통신 회사들이 모여 만든 오픈 핸드셋 얼라이언스(OHA)가 설립되어 공개 표준을 위한 개발을 시작하였다.
플랫폼 아키텍처
안드로이드 플랫폼은 여러 계층으로 구성된 소프트웨어 스택 구조를 가진다.
- 리눅스 커널: 시스템의 핵심 기반으로 동작한다.
- C/C++ 라이브러리: 시스템 구성 요소에서 사용되는 다양한 네이티브 라이브러리를 포함한다.
- 안드로이드 런타임(ART): 자바 및 코틀린으로 작성된 응용 프로그램을 실행하기 위한 환경을 제공한다. 각 응용 프로그램은 별도의 프로세스에서 실행된다.
- 응용 프로그램 프레임워크: 개발자가 시스템 기능에 접근할 수 있는 API를 제공한다.

개발 환경
개발자는 자바(Java)와 코틀린(Kotlin) 언어를 사용하여 안드로이드 응용 프로그램을 작성할 수 있다. 안드로이드 소프트웨어 개발 키트(SDK)는 응용 프로그램 개발에 필요한 도구와 API를 제공한다. 또한 안드로이드 디버그 브리지(adb)를 통해 워크스테이션과 가상 기기 또는 실제 기기 간의 통신 및 디버깅이 가능하다.
안드로이드 오픈 소스 프로젝트 (AOSP)
안드로이드 오픈 소스 프로젝트(AOSP)는 안드로이드의 문서와 소스 코드를 누구나 사용할 수 있도록 공개하는 프로젝트이다. AOSP를 통해 업체나 개발자는 특정 기업의 통제 없이 자체적인 기기용 안드로이드 변형 버전을 만들 수 있다. 이는 기기 간의 호환성을 유지하면서도 맞춤설정이 가능한 생태계를 구축하는 데 목적이 있다.