[Developer]118 Linux4Android 4th Morning http://code.google.com/p 각 구글에 대한 프로젝트 코드를 참고할 수 있다. micro kernel - NT, Message Q monolithic kernel - Linux zImage - 통합형커널 자주사용하지 않는 것들을 모듈화 시킨다. $ lsmod 명령어 Linux Kernel의 모듈을 볼 수 있게 해준다. 커널코드하고 사용카 코드는 다르다. strace 명령어를 쓰면 intruction에 대한 추적을 할 수 있다. 참고로 ls 명령어를 추적할 수 있으면 커널에 대한 이해를 어느정도 하고 있다고 볼 수 있을 정도이다. Linux는 모든 것을 파일로 취급한다. 단 네트워크 장치만 인터페이스 이름으로 인식을 한다. libpcap -> tcpdump를 할 수 잇다. http://nt.. 2010. 11. 11. Linux4Android 3rd Afternoon arch/arm/boot/compressed로 이동. 커널엔 main()코드가 없다. misc.c에 main()이 있다는 것은 일반코드라는 의미이다. 커널에서는 init만 한다. MMU가 설정되면 리눅스 커널은 가상주소를 기준으로 메모리맵을 사용한다. arch/arm/tools/mach-types.h Processor ID값은 cp15의 레지스터 0에 명시되어있다. mach-types.h 파일은 arch/arm/tools/mach-types를 바탕으로 자동 생성 init kernel thread에서 sys_dup()는 system call이다. Redhat이나 Ubuntu는 System V init을 쓴다. rc = Run Command의 의미이다. ↗ 파일 init=/init ↘ __setup()에 선.. 2010. 11. 10. Linux4Android 3rd Morning Kernel tuning linux-2.6/Documentation/kernel-parameters.txt /proc/sys/kernel/* /sysctl/....vm, net 커널패치=> kernel.org/pub/libux/kernel/people/* mingo.... mcp 소스 수정(좀 안다면..) 동기화, 커널 내부구조 kernel.org 에 있는 파일을 수정하면 안된다. 이것을 수정한다고해서 절대로 성능이 좋아지지 않는다. 리누스토발즈는 안정성을 가장 우선으로 따지고 이끌어가고 있다. ftp.redhat.com -> ..... /RHEL/linux-kernel-2.6.....src와 rpm이 있다. cat /proc/sys/kernel/modprobe를 해보면, /sbin/modprobe가 이.. 2010. 11. 10. Linux4Android 2nd Afternoon NFS는 원격에 있는 디렉토리를 내 하나의 특별한 File System처럼 보이도록 mount 시키는 작업을 하기위해 필요한 시스템이다. 커널이미지 1) bzImage : PC나 서버용 2) zImage : 일반적으로 Embedded용 3) uImage : universial -> u-boot라는 toos/mkimage 명령으로 만들어지는 이미지이다. 4) Image 5) piggy u-boot는 uImage만 인식한다. uImage는 로딩되면서 압축이 풀린다. 만약에 u-boot에서 zImage를 인식하게 하려면, u-boot에서 일정 수정을 가해야만 한다. uImage는 bootm의 매개변수를 읽을 수 있다. nfsroot를 이용하면 PC에 있는 특정 이미지를 네트워크화 시켜서 연결하여 타겟에서 PC.. 2010. 11. 10. Linux4Android 2nd Morning Host 같은 경우 대체적으로 x86머신을 사용하는 편이지만, target의 경우에는 아닌 경우가 많기 때문에(ex:ARM) Cross Compiler(cross toolchain)가 필요하다. Assembler에 대한 읽을 수 있는 지식이 필요하다. Embedded S/W 개발환경 구성을 위해서는 Serial과 Ethernet을 연결하는 것이 일반적이다. Bootloader를 올릴 때에 JTAG을 이용하여 올린다. T32를 이용해서 Bootloader를 올려야하지만, openocd를 이용해서 하는것이 무료이기 때문에 이것을 이용해도 충분히 가능하다(왠만한 칩셋은 다 지원한다.) * openocd - S3CXX 110, 210계열, PX925X, 27X, 30X, 32X계열 등을 지원한다. 프로세서중 가.. 2010. 11. 9. 이전 1 ··· 13 14 15 16 17 18 19 ··· 24 다음 반응형