λ³Έλ¬Έ λ°”λ‘œκ°€κΈ°
ComputerScience πŸ“š/운영체제

[OS] macOS, iOS 와 Android 운영체제

by dkswnkk 2022. 2. 6.

ν•™μŠ΅ν•  ꡐ재

 

macOS와 iOS

Apple의 macOSμš΄μ˜μ²΄μ œλŠ” 주둜 λ°μŠ€ν¬ν†± 및 λž©ν†± 컴퓨터 μ‹œμŠ€ν…œμ—μ„œ μ‹€ν–‰λ˜λ„λ‘ μ„€κ³„λ˜μ—ˆμœΌλ©° iOSλŠ” iPhone 슀마트폰 및 iPad νƒœλΈ”λ¦Ώ μ»΄ν“¨ν„°μš©μœΌλ‘œ μ„€κ³„λœ λͺ¨λ°”일 μš΄μ˜μ²΄μ œμž…λ‹ˆλ‹€. ꡬ쑰적으둜 macOS와 iOSλŠ” 곡톡점이 λ§ŽμœΌλ―€λ‘œ κ³΅μœ ν•˜λŠ” λ‚΄μš©κ³Ό μ„œλ‘œ λ‹€λ₯Έ 점을 κ°•μ‘°ν•˜μ—¬ ν•¨κ»˜ μ œμ‹œν•©λ‹ˆλ‹€. 이 두 μ‹œμŠ€ν…œμ˜ 일반적인 μ•„ν‚€ν…μ²˜λŠ” μ•„λž˜μ˜ 이미지와 κ°™μŠ΅λ‹ˆλ‹€.

Apple의 macOS와 iOS운영체제의 ꡬ쑰

λ‹€μ–‘ν•œ 측의 μ£Όμš” νŠΉμ§•μ€ λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€.

  • μ‚¬μš©μž κ²½ν—˜ μΈ΅: 이 측은 μ‚¬μš©μžκ°€ μ»΄ν“¨νŒ… μž₯μΉ˜μ™€ μƒν˜Έ μž‘μš©ν•  수 μžˆλŠ” μ†Œν”„νŠΈμ›¨μ–΄ μΈν„°νŽ˜μ΄μŠ€λ₯Ό μ •μ˜ν•©λ‹ˆλ‹€. macOSλŠ” 마우슀 λ˜λŠ” νŠΈλž™νŒ¨λ“œ 용으둜 μ„€κ³„λœ Aqua μ‚¬μš©μž μΈν„°νŽ˜μ΄μŠ€λ₯Ό μ‚¬μš©ν•˜λŠ” 반면, iOSλŠ” ν„°μΉ˜ μž₯치용으둜 μ„€κ³„λœ Springboard μ‚¬μš©μž μΈν„°νŽ˜μ΄μŠ€λ₯Ό μ‚¬μš©ν•©λ‹ˆλ‹€.
  • μ‘μš© ν”„λ‘œκ·Έλž¨ ν”„λ ˆμž„μ›Œν¬ μΈ΅: 이 μΈ΅μ—λŠ” Cocoa 및 Cocoa Touch ν”„λ ˆμž„μ›Œν¬κ°€ ν¬ν•¨λ˜λ©° Objective-C 및 Swift ν”„λ‘œκ·Έλž˜λ° 언어에 λŒ€ν•œ APIλ₯Ό μ œκ³΅ν•©λ‹ˆλ‹€. Cocoa와 Cocoa Touch의 μ£Όμš” 차이점은 μ „μžλŠ” macOS μ‘μš© ν”„λ‘œκ·Έλž¨ κ°œλ°œμ— μ‚¬μš©λ˜κ³  ν›„μžλŠ” iOSκ°€ ν„°μΉ˜μŠ€ν¬λ¦°κ³Ό 같은 λͺ¨λ°”일 μž₯μΉ˜μ— κ³ μœ ν•œ ν•˜λ“œμ›¨μ–΄ κΈ°λŠ₯을 μ§€μ›ν•˜λŠ” 데 μ‚¬μš©ν•œλ‹€λŠ” κ²ƒμž…λ‹ˆλ‹€.
  • 핡심 ν”„λ ˆμž„μ›Œν¬: 이 측은 Quicktime 및 OpenGL을 ν¬ν•¨ν•œ κ·Έλž˜ν”½ 및 λ―Έλ””μ–΄λ₯Ό μ§€μ›ν•˜λŠ” ν”„λ ˆμž„μ›Œν¬λ₯Ό μ •μ˜ν•©λ‹ˆλ‹€.
  • 컀널 ν™˜κ²½: Darwin이라고 λΆˆλ¦¬λŠ” 이 ν™˜κ²½μ—λŠ” Mach λ§ˆμ΄ν¬λ‘œμ»€λ„κ³Ό BSD UNIX 컀널이 ν¬ν•¨λ©λ‹ˆλ‹€.

μœ„ 이미지에 λ„μ‹œλœ κ²ƒμ²˜λŸΌ μ‘μš© ν”„λ‘œκ·Έλž¨μ€ μ‚¬μš©μž κ²½ν—˜ κΈ°λŠ₯을 μ΄μš©ν•˜κ±°λ‚˜ 이 κΈ°λŠ₯을 μš°νšŒν•˜μ—¬ μ‘μš© ν”„λ‘œκ·Έλž¨ ν”„λ ˆμž„μ›Œν¬ λ˜λŠ” 핡심 ν”„λ ˆμž„μ›Œν¬μ™€ 직접 μƒν˜Έ μž‘μš©ν•˜λ„λ‘ 섀계될 수 μžˆμŠ΅λ‹ˆλ‹€. λ˜ν•œ μ‘μš© ν”„λ‘œκ·Έλž¨μ€ ν”„λ ˆμž„μ›Œν¬λ₯Ό μ™„μ „νžˆ 버리고 컀널 ν™˜κ²½κ³Ό 직접 톡신할 수 μžˆμŠ΅λ‹ˆλ‹€.(이 ν›„μžμ˜ 경우의 μ˜ˆλŠ” μ‚¬μš©μž μΈν„°νŽ˜μ΄μŠ€ 없이 POSIX μ‹œμŠ€ν…œ μ½œμ„ μˆ˜ν–‰ν•˜λ„λ‘ μž‘μ„±λœ C ν”„λ‘œκ·Έλž¨μž…λ‹ˆλ‹€.)

macOS와 iOS의 μ€‘μš”ν•œ 차이점은 λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€.

  • macOSλŠ” λ°μŠ€ν¬ν†± 및 λž©ν†± 컴퓨터 μ‹œμŠ€ν…œμš©μ΄λ―€λ‘œ Intel μ•„ν‚€ν…μ²˜μ—μ„œ μ‹€ν–‰λ˜λ„λ‘ μ»΄νŒŒμΌλ©λ‹ˆλ‹€. iOSλŠ” λͺ¨λ°”일 μž₯치용으둜 μ„€κ³„λ˜μ—ˆμœΌλ―€λ‘œ ARM 기반 μ•„ν‚€ν…μ²˜μš©μœΌλ‘œ μ»΄νŒŒμΌλ©λ‹ˆλ‹€. (이제 m1 μ•„ν‚€ν…μ²˜λ„ μΆ”κ°€λ˜μ—ˆμœΌλ‹ˆ λ°”λ€Œμ–΄μ•Ό ν•  것 κ°™μŠ΅λ‹ˆλ‹€.) λ§ˆμ°¬κ°€μ§€λ‘œ iOS 컀널은 전원 관리 및 곡격적인 λ©”λͺ¨λ¦¬ 관리와 같은 λͺ¨λ°”일 μ‹œμŠ€ν…œμ˜ νŠΉμ • κΈ°λŠ₯κ³Ό μš”κ΅¬λ₯Ό ν•΄κ²°ν•˜κΈ° μœ„ν•΄ μ•½κ°„ μˆ˜μ •λ˜μ—ˆμŠ΅λ‹ˆλ‹€. λ˜ν•œ iOSμ—λŠ” macOS보닀 더 μ—„κ²©ν•œ λ³΄μ•ˆ 섀정이 μžˆμŠ΅λ‹ˆλ‹€.
  • iOS μš΄μ˜μ²΄μ œλŠ” 일반적으둜 macOS보닀 κ°œλ°œμžμ—κ²Œ 훨씬 더 μ œν•œμ μ΄λ©° 더 폐쇄적일 μˆ˜λ„ μžˆμŠ΅λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄, iOSλŠ” iOSμ—μ„œ POSIX 및 BSD API에 λŒ€ν•œ μ•‘μ„ΈμŠ€λ₯Ό μ œν•œν•˜λŠ” 반면 macOSμ—μ„œ κ°œλ°œμžλŠ” 곡개적으둜 μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

이제 Darwin에 μ΄ˆμ μ„ λ§žμΆ°λ³΄κ² μŠ΅λ‹ˆλ‹€. Darwin은 주둜 Mach λ§ˆμ΄ν¬λ‘œμ»€λ„κ³Ό BSD UNIX μ»€λ„λ‘œ κ΅¬μ„±λœ κ³„μΈ΅ν™”λœ μ‹œμŠ€ν…œμž…λ‹ˆλ‹€. Darwin의 κ΅¬μ‘°λŠ” μ•„λž˜μ— 이미지와 κ°™μŠ΅λ‹ˆλ‹€.

Darwin의 ꡬ쑰

  운영체제 λŒ€λΆ€λΆ„μ€ UNIX 및 Linux μ‹œμŠ€ν…œμ—μ„œ ν‘œμ€€ C 라이브러리λ₯Ό ν†΅ν•˜λŠ” κ²ƒμ²˜λŸΌ 컀널에 λŒ€ν•΄ ν•˜λ‚˜μ˜ μ‹œμŠ€ν…œ 콜 μΈν„°νŽ˜μ΄μŠ€λ₯Ό μ œκ³΅ν•˜λŠ” 반면 Darwin은 Mach μ‹œμŠ€ν…œ 콜(트랩이라고 함)κ³Ό BSD μ‹œμŠ€ν…œ 콜(POSIX κΈ°λŠ₯ 제곡) 두 개의 μ‹œμŠ€ν…œ 콜 μΈν„°νŽ˜μ΄μŠ€λ₯Ό μ œκ³΅ν•©λ‹ˆλ‹€. μ΄λŸ¬ν•œ μ‹œμŠ€ν…œ μ½œμ— λŒ€ν•œ μΈν„°νŽ˜μ΄μŠ€λŠ” ν‘œμ€€ C 라이브러리뿐만 μ•„λ‹ˆλΌ λ„€νŠΈμ›Œν‚Ή, λ³΄μ•ˆ 및 ν”„λ‘œκ·Έλž˜λ° μ–Έμ–΄ 지원을 μ œκ³΅ν•˜λŠ” 라이브러리λ₯Ό ν¬ν•¨ν•˜λŠ” ν’λΆ€ν•œ 라이브러리 μ§‘ν•©μž…λ‹ˆλ‹€.

 μ‹œμŠ€ν…œ 콜 μΈν„°νŽ˜μ΄μŠ€ μ•„λž˜μ—μ„œ MachλŠ” λ©”λͺ¨λ¦¬ 관리, CPU μŠ€μΌ€μ€„λ§ 및 λ©”μ‹œμ§€ 전달 및 원격 ν”„λ‘œμ‹œμ € 호좜(remote procedure call, RPC)κ³Ό 같은 ν”„λ‘œμ„ΈμŠ€ κ°„ 톡신(Inter Process Communication, IPC) κΈ°λŠ₯을 ν¬ν•¨ν•œ κΈ°λ³Έ 운영체제 μ„œλΉ„μŠ€λ₯Ό μ œκ³΅ν•©λ‹ˆλ‹€. Machμ—μ„œ μ œκ³΅ν•˜λŠ” λŒ€λΆ€λΆ„μ˜ κΈ°λŠ₯은 컀널 좔상화λ₯Ό ν†΅ν•΄μ„œ μ‚¬μš© κ°€λŠ₯ν•©λ‹ˆλ‹€. 이 μΆ”μƒν™”μ—λŠ” νƒœμŠ€ν¬(Mach ν”„λ‘œμ„ΈμŠ€), μŠ€λ ˆλ“œ, λ©”λͺ¨λ¦¬ 객체 및 포트(IPC에 μ‚¬μš©)κ°€ ν¬ν•¨λ©λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄, μ‘μš© ν”„λ‘œκ·Έλž¨μ€ BSD POSIX fork() μ‹œμŠ€ν…œ μ½œμ„ μ‚¬μš©ν•˜μ—¬ μƒˆ ν”„λ‘œμ„ΈμŠ€λ₯Ό 생성할 수 μžˆμŠ΅λ‹ˆλ‹€. MachλŠ” 컀널 λ‚΄μ—μ„œ ν”„λ‘œμ„ΈμŠ€λ₯Ό λ‚˜νƒ€λ‚΄κΈ° μœ„ν•˜μ—¬ νƒœμŠ€ν¬ 컀널 좔상화λ₯Ό μ‚¬μš©ν•©λ‹ˆλ‹€. 

 Mach 및 BSD 외에도 컀널 ν™˜κ²½μ€ μž₯치 λ“œλΌμ΄λ²„ 및 동적 적재 κ°€λŠ₯ λͺ¨λ“ˆ(macOSλŠ” 컀널 ν™•μž₯ λ˜λŠ” kext라고 함) κ°œλ°œμ„ μœ„ν•œ I/Oν‚€νŠΈλ₯Ό μ œκ³΅ν•©λ‹ˆλ‹€.

 Apple Darwin μš΄μ˜μ²΄μ œλŠ” 곡개 μ†ŒμŠ€λ‘œ λ°°ν¬λ˜μ—ˆμŠ΅λ‹ˆλ‹€. κ·Έ κ²°κ³Ό X-11 μœˆλ„ μ‹œμŠ€ν…œ 및 μΆ”κ°€ 파일 μ‹œμŠ€ν…œ 지원과 같은 λ‹€μ–‘ν•œ ν”„λ‘œμ νŠΈκ°€ Darwin에 뢀가적인 κΈ°λŠ₯을 μΆ”κ°€ν•˜μ˜€μŠ΅λ‹ˆλ‹€. κ·ΈλŸ¬λ‚˜ Darwinκ³Ό 달리 Cocoa μΈν„°νŽ˜μ΄μŠ€μ™€ macOS μ‘μš©ν”„λ‘œκ·Έλž¨ κ°œλ°œμ— μ‚¬μš©ν•  수 μžˆλŠ” λ‹€λ₯Έ 독점적 Apple ν”„λ ˆμž„μ›Œν¬λŠ” λΉ„κ³΅κ°œ μƒνƒœμž…λ‹ˆλ‹€.

 

Android

Android μš΄μ˜μ²΄μ œλŠ” Open Handset Alliance (Google이 주도)κ°€ μ„€κ³„ν•˜μ˜€μœΌλ©° Android 슀마트폰과 νƒœλΈ”λ¦Ώμ„ μœ„ν•΄ κ°œλ°œλ˜μ—ˆμŠ΅λ‹ˆλ‹€. iOSκ°€ Apple의 λͺ¨λ°”일 μž₯μΉ˜μ—μ„œ μ‹€ν–‰ν•˜κΈ° μœ„ν•΄ μ„€κ³„λ˜μ—ˆκ³  μ†ŒμŠ€κ°€ κ³΅κ°œλ˜μ§€ μ•Šμ€ 데 λ°˜ν•΄, AndroidλŠ” λ‹€μ–‘ν•œ λͺ¨λ°”일 ν”Œλž«νΌμ—μ„œ μ‹€ν–‰λ˜λ©° 곡개 μ†ŒμŠ€μž…λ‹ˆλ‹€. 곡개 μ†ŒμŠ€λΌλŠ” μ΄μœ κ°€ λΉ λ₯΄κ²Œ 인기가 λ†’μ•„μ‘Œλ˜ 이유 쀑 일뢀뢄을 μ°¨μ§€ν•©λ‹ˆλ‹€. Android의 κ΅¬μ‘°λŠ” μ•„λž˜μ˜ 이미지와 κ°™μŠ΅λ‹ˆλ‹€.

Google Android의 ꡬ쑰

 AndroidλŠ” κ·Έλž˜ν”½, μ˜€λ””μ˜€ 및 ν•˜λ“œμ›¨μ–΄ κΈ°λŠ₯을 μ§€μ›ν•˜λŠ” λ‹€μ–‘ν•œ ν”„λ ˆμž„μ›Œν¬λ₯Ό μ œκ³΅ν•˜λŠ” κ³„μΈ΅ν™”λœ μ†Œν”„νŠΈμ›¨μ–΄ μŠ€νƒμ΄λΌλŠ” μ μ—μ„œ iOS와 μœ μ‚¬ν•©λ‹ˆλ‹€. κ·Έ κ²°κ³Ό μ΄λŸ¬ν•œ κΈ°λŠ₯은 λ‹€μ–‘ν•œ Android 지원 μž₯μΉ˜μ—μ„œ μ‹€ν–‰λ˜λŠ” λͺ¨λ°”일 μ‘μš© ν”„λ‘œκ·Έλž¨μ„ κ°œλ°œν•˜κΈ° μœ„ν•œ ν”Œλž«νΌμ„ μ œκ³΅ν•©λ‹ˆλ‹€.

 Android μž₯치의  μ†Œν”„νŠΈμ›¨μ–΄ μ„€κ³„μžλŠ” Java μ–Έμ–΄λ‘œ μ‘μš© ν”„λ‘œκ·Έλž¨μ„ κ°œλ°œν•˜μ§€λ§Œ 일반적으둜 ν‘œμ€€ Java APIλ₯Ό μ‚¬μš©ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. Google은 Java κ°œλ°œμ„ μœ„ν•΄ λ³„λ„μ˜ Android APIλ₯Ό μ„€κ³„ν•˜μ˜€μŠ΅λ‹ˆλ‹€. Java μ‘μš© ν”„λ‘œκ·Έλž¨μ€ Android RunTime(ART)μ—μ„œ μ‹€ν–‰ν•  수 μžˆλŠ” ν˜•μ‹μœΌλ‘œ μ»΄νŒŒμΌλ©λ‹ˆλ‹€. ARTλŠ” Android용으둜 μ„€κ³„λ˜μ–΄ λ©”λͺ¨λ¦¬μ™€ CPU 처리λŠ₯λ ₯이 μ œν•œμ μΈ λͺ¨λ°”일 μž₯μΉ˜μ— μ΅œμ ν™”λœ 가상 λ¨Έμ‹ μž…λ‹ˆλ‹€. Java ν”„λ‘œκ·Έλž¨μ€ μš°μ„  Java λ°”μ΄νŠΈμ½”λ“œ .class 파일둜 컴파일된 ν›„ μ‹€ν–‰ κ°€λŠ₯ν•œ .dex 파일둜 λ³€ν™˜λ©λ‹ˆλ‹€. λ§Žμ€ Java 가상 머신이 μ‘μš© ν”„λ‘œκ·Έλž¨ νš¨μœ¨μ„±μ„ ν–₯μƒν•˜κΈ° μœ„ν•΄ JIT(just-in-time) μ»΄νŒŒμΌμ„ μˆ˜ν–‰ν•˜λŠ” 반면, ARTλŠ” AOT(ahead-of-time) μ»΄νŒŒμΌμ„ μˆ˜ν–‰ν•©λ‹ˆλ‹€. 이제 .dex νŒŒμΌμ€ μž₯μΉ˜μ— μ„€μΉ˜λ  λ•Œ ν•΄λ‹Ή 기계어 μ½”λ“œλ‘œ μ»΄νŒŒμΌλ˜μ–΄ ARTμ—μ„œ 싀행될 수 있게 λ©λ‹ˆλ‹€. AOT μ»΄νŒŒμΌμ€ λͺ¨λ°”일 μ‹œμŠ€ν…œμ— μ€‘μš”ν•œ κΈ°λŠ₯인 μ „λ ₯ μ†ŒλΉ„λ₯Ό μ€„μ΄λ©΄μ„œ 더 효율적인 μ‘μš©ν”„λ‘œκ·Έλž¨ 싀행을 κ°€λŠ₯ν•˜κ²Œ ν•©λ‹ˆλ‹€.

 Android κ°œλ°œμžλŠ” κ°œλ°œμžκ°€ 가상 머신을 μš°νšŒν•  수 있게 ν•˜λŠ” Java λ„€μ΄ν‹°λΈŒ μΈν„°νŽ˜μ΄μŠ€(λ˜λŠ” JNI)λ₯Ό μ‚¬μš©ν•˜λŠ” Java ν”„λ‘œκ·Έλž¨μ„ μž‘μ„±ν•˜μ—¬ νŠΉμ • ν•˜λ“œμ›¨μ–΄ κΈ°λŠ₯에 μ•‘μ„ΈμŠ€ ν•  수 μžˆλŠ” ν”„λ‘œκ·Έλž¨μ„ μž‘μ„±ν•  수 μžˆμŠ΅λ‹ˆλ‹€. JNIλ₯Ό μ‚¬μš©ν•˜μ—¬ μž‘μ„±λœ ν”„λ‘œκ·Έλž¨μ€ 일반적으둜 ν•œ ν•˜λ“œμ›¨μ–΄ μž₯μΉ˜μ—μ„œ λ‹€λ₯Έ ν•˜λ“œμ›¨μ–΄ μž₯치둜 이식할 수 μ—†μŠ΅λ‹ˆλ‹€.

 Android μ‘μš© ν”„λ‘œκ·Έλž¨μ—μ„œ μ‚¬μš© κ°€λŠ₯ν•œ λ„€μ΄ν‹°λΈŒ 라이브러리 μ§‘ν•©μ—λŠ” μ›Ή λΈŒλΌμš°μ €(webkit), λ°μ΄ν„°λ² μ΄μŠ€ 지원(SQLite) 및 λ„€νŠΈμ›Œν¬ μ†ŒμΌ“(예: SSL)을 κ°œλ°œν•˜κΈ° μœ„ν•œ ν”„λ ˆμž„μ›Œν¬κ°€ ν¬ν•¨λ©λ‹ˆλ‹€.

 AndroidλŠ” 거의 λ¬΄μ œν•œμ˜ ν•˜λ“œμ›¨μ–΄ μž₯μΉ˜μ—μ„œ 싀행될 수 μžˆμœΌλ―€λ‘œ Google은 ν•˜λ“œμ›¨μ–΄ 좔상화 계측 λ˜λŠ” HAL을 톡해 물리적 ν•˜λ“œμ›¨μ–΄λ₯Ό μΆ”μƒν™”ν•˜κΈ°λ‘œ μ„ νƒν•˜μ˜€μŠ΅λ‹ˆλ‹€. HAL은 카메라, GPS μΉ© 및 기타 μ„Όμ„œμ™€ 같은 λͺ¨λ“  ν•˜λ“œμ›¨μ–΄λ₯Ό μΆ”μƒν™”ν•˜μ—¬ νŠΉμ • ν•˜λ“œμ›¨μ–΄μ™€ 상관없이 μΌκ΄€λœ λ·°λ₯Ό μ‘μš© ν”„λ‘œκ·Έλž¨μ— μ œκ³΅ν•©λ‹ˆλ‹€. λ¬Όλ‘  이 κΈ°λŠ₯을 톡해 κ°œλ°œμžλŠ” λ‹€λ₯Έ ν•˜λ“œμ›¨μ–΄ ν”Œλž«νΌμ—μ„œ 이식 κ°€λŠ₯ν•œ ν”„λ‘œκ·Έλž¨μ„ μž‘μ„±ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

 Linux μ‹œμŠ€ν…œμ—μ„œ μ‚¬μš©ν•˜λŠ” ν‘œμ€€ C λΌμ΄λΈŒλŸ¬λ¦¬λŠ” GNU C 라이브러리(glibc)μž…λ‹ˆλ‹€. λŒ€μ‹  Google은 Androidλ₯Ό μœ„ν•œ Bionic ν‘œμ€€ C 라이브러리λ₯Ό κ°œλ°œν•˜μ˜€μŠ΅λ‹ˆλ‹€. Bionic은 glibc보닀 λ©”λͺ¨λ¦¬ μ‚¬μš©λŸ‰μ΄ 적을 뿐만 μ•„λ‹ˆλΌ λͺ¨λ°”일 μž₯치λ₯Ό νŠΉμ§•μ§“λŠ” 느린 CPUλ₯Ό μœ„ν•΄ μ„€κ³„λ˜μ—ˆμŠ΅λ‹ˆλ‹€.(λ˜ν•œ Bionic은 Google이 glibc의 GPL λΌμ΄μ„ μŠ€λ₯Ό μš°νšŒν•˜λ„λ‘ ν—ˆμš©ν•©λ‹ˆλ‹€.)

 Android μ†Œν”„νŠΈμ›¨μ–΄ μŠ€νƒμ˜ 맨 μ•„λž˜μ—λŠ” Linux 컀널이 μžˆμŠ΅λ‹ˆλ‹€. Google은 전원 관리와 같은 λͺ¨λ°”일 μ‹œμŠ€ν…œμ˜ νŠΉμˆ˜ν•œ μš”κ΅¬λ₯Ό μ§€μ›ν•˜κΈ° μœ„ν•΄ λ‹€μ–‘ν•œ μ˜μ—­μ—μ„œ Androidμ—μ„œ μ‚¬μš©λ˜λŠ” Linux 컀널을 μˆ˜μ •ν•˜μ˜€μŠ΅λ‹ˆλ‹€. λ˜ν•œ λ©”λͺ¨λ¦¬ 관리 및 할당을 λ³€κ²½ν–ˆμœΌλ©° Binder둜 μ•Œλ €μ§„ μƒˆλ‘œμš΄ ν˜•νƒœμ˜ IPCλ₯Ό μΆ”κ°€ν–ˆμŠ΅λ‹ˆλ‹€.

λŒ“κΈ€