Android Framework ) init.rc 파일

Android 2014. 6. 9. 12:46 Posted by gaeddong2

init.rc

안드로이드 부팅 시 시스템의 환경 설정과 실행할 프로세스를 기술해 놓은 파일


init.rc파일은 'on'키워드로 시작하는 액션리스트와 'service'키워드로 시작하는 서비스 리스트로 나뉜다.



< 액션 리스트 >

시스템 환경 변수나 리눅스 명령어들을 부팅 시 필요한 디렉터리 생성이나 특정 파일에 대한 퍼미션을 지정

'on init 섹션'

- 환경 변수 등록 ( 루트 파일 시스템 내의 명령어들을 사용하기 위한 실행 경로 등록 및 컴파일 시 필요한 라이브러리 등록)

- 시스템 동작 시 필요한 파일 및 디렉터리 생성 및 퍼미션 조작

- 시스템 동작과 관련된 디렉터리 마운트


'on boot 섹션'

- 애플리케이션 종료 조건 설정 ( Out Of Memory 조정값을 지정)

- 애플리케이션 구동에 필요한 디렉터리 및 파일 퍼미션 설정


< 서비스 리스트 >

부팅 시 실행하는 프로세스


'service 섹션'

- 프로세스는 모두 서비스 리스트에 등록, init 프로세스가 실행되면서 서비스 리스트에 등록된 프로세스를 순차적으로 실행



< init.rc 파일 네가지 종류의 문장 >

  • Action
  • Commands
  • Services
  • Options

Actions
- 각 actiond은 기능을 수행하기 위한 이벤트, ' on 키워드' 로 시작되는 이벤트가 발생하면 기술된 명령이 순차적으로 실행된다.

Service
- init 프로세스가 실행하거나 재실행할 프로세스를 기술한다.

Option
- Service를 실행할 때 실행 옵션을 줄 수 있다.

Command
exec <path > | <argument> |* 이와 같은 형식의 명령을 실행한다. 실행이 종료될 때까지 init이 대기 상태가 되므로 주의.