임베디드 리눅스 커널, 부팅, 컴파일, 포팅과 루트 파일 시스템 이전 포스트에서 이어집니다. [임베디드 리눅스 개발 환경 [링크]] 4. 리눅스 커널 개념 운영체제의 핵심 부분 운영체제는 HW 플랫폼에 포함된 모든 하드웨어 구성요소에 작용하면서 컴퓨터에서 실행되는 모든 응용 프로그램의 구동 환경을 제공- 모든 프로세스, 하드웨어, 메모리, 시스템 자원 등도 관리 커널이란 운영체제와 사용자 간의 연결 고리 커널 이미지 zImage : 압축된 형태의 커널uImage : u-boot에서 사용할 압축된 형태의 커널 : zImage는 u-boot의 파라미터를 전달받을 수 없는 구조이기에 uImage를 사용 커널 부팅 과정 프로세스 정보 검색- ARM일 경우 ARM과 관련된 프로세스 정보를 검색- 정보가 없다면 사..
Linux(리눅스), is not a valid path to the ..... kernel headers 해결 참조 사이트 - LinuxQuesition.org [링크] 에러 메시지 what is the location of the gcc program on your machin the path "" is not a valid path to the ..... kernel headers 위와 같은 에러들은 커널이 완전히 설치되지 않을 경우에 생성이 됩니다. 그리고 커널만 별도로 설치하려고 시도하면, 종종 "난 설치 못한다"며 거부하는 경우도 있으니, 깔끔하게 시스템 전체를 업그레이드합니다. 12345678su -yum -y updateyum -y install gcc make kernel-headers ..
리눅스 디바이스 드라이버 모듈 프로그래밍과 커널, 명령어 설명 모듈(module) 소개 리눅스의 특징 중 하나는 리눅스 커널이 동작 중에 기능을 추가- 수행 중에 커널에 부가되는 디바이스 드라이버 코드의 부분을 모듈 : 실행 중인 리눅스 커널에 동적으로 적재되거나 제거- 하나의 오브젝트 파일(*.o)- 이벤트 처리(Event handling) 형태의 프로그램 방식 : main() 함수가 없다 : startup, cleanup 함수 존재 - 주로 파일 시스템과 디바이스 드라이버 구현 시 모듈 프로그래밍- 각 모듈은 동적으로 링크될 수 있는 목적코드로 insmod 로 커널에 링크되고 rmmod로 링크가 해제 모듈 프로그램의 이점- 효과적인 메모리 사용- 커널 전체를 다시 컴파일하지 않고 커널의 일부분 또는 ..
ELF 파일이란, 구조, 포맷, 분석, 생성 원리 (리눅스 커널 2.2 부터 지원) Executable and Linkable Format (ELF 파일) ELF- AT&T System V Unix 시스템에서 개발- 리눅스를 포함하여 거의 모든 UNIX계열의 Object 파일 및 실행 파일 표준 binary format- 리눅스 커널도 2.2 버전으로 오면서 ELF 파일 포맷을 지원하며, 커널의 이미지도 ELF 형태로 만들 수 있음 ELF Header- ELF 파일 포맷임을 표시하는 magic number, 이미지의 형태(.o, exec, .so)- 실행되는 CPU 정보, Little-endian인지 Big-endian인지 표시하는 Byte 순서와 같은 파일 내용의 기본적인 정보 포함 Program He..