임베디드 리눅스 개발, 타겟 시스템 만들기 (교차개발 환경, 프로그램) 임베디드 리눅스 교차개발 환경 구축 임베디드 리눅스 프로세서의 선정- 계획중인 시스템의 용도- 시스템의 크기 – 휴대용 or 설치용 장비- 비용 고려하여 선정 운영체제의 선정- CPU의 성능 – 32bit or 64bit?- 하드웨어가 MMU를 지원하는가?- 메모리와 보조기억장치- 네트워크 환경 사용 유무 임베디드 리눅스 호스트 시스템에 교차 개발 환경 구축- binutils : as, ar, ld, nm, objcopy, objdump, size, strings, strip, add2line,...- 컴파일러(gcc), 디버거(gdb)- 라이브러리(glibc, ulibc, newlib, diet libc ... ) 임베디드 리눅스 ..
부트로더(bootloader) 개념-명령어, JTAG 퓨징 [임베디드 리눅스 기초] 부트로더 (bootloader) 소개 -시스템의 하드웨어를 초기화하고 운영체제의 커널을 메모리에 올려 실행시키는 시스템 프로그램- 부트로더의 위치 : 일반적으로 시스템 메모리의 물리 주소 0번지부터 위치 : 롬, 플래시, SRAM 등 정적인 메모리에 위치 - 부트로더의 기능 : bootloader는 메모리 초기화 : 하드웨어 초기화 - 직렬포트의 초기화 - 네트워크 초기화 - 프로세서 속도, 인터럽트의 초기화 - 커널과 램 디스크 적재 : 커널과 램 디스크를 램에 적재하여 실행 부트로더의 동작 (1)- 부트로더의 실행 순서 부트로더 bootloader 동작 (2) - 하드웨어 초기화 : 프로세서 및 메모리 초기화 : 네트..
[리눅스 개발자 필수] Linux 커널 Kernel 기초 이론 5가지 이해하기 1. 리눅스 커널 접근 방식 구조 리눅스 커널 접근하는 방법에 따라 모노리딕 커널(monolithic kernel)과 마이크로 커널(micro kernel)로 분류 2. 리눅스 모노리닉 커널 - 컴퓨팅 자원 관리에 필요한 모든 기능을 하나로 통합한 커널- 같은 메모리 공간 내에 필요한 모든 기능을 구현 : 함수 호출(function call) 혹은 전역 변수를 이용하여 커널의 기능을 사용 - 장점 : 구현이 쉽고 시스템 자원을 효율적으로 이용- 단점 : 커널 코드에 하드웨어와 관련된 저수준 상호 작용이 포함되어서 다른 시스템에서 이용하기 어려움 : 커널의 기능을 확장할수록 커널의 크기가 방대해져 관리하기 어려움- Solaris..
HTML 웹 코딩, CGI 프로그래밍 방법 (서버 프로그램 기초 구조 이론) HTML 코딩을 위한 CGI (Common Gateway Interface) - 웹 서버와 외부 프로그램 간의 연결에 대한 규약 - 상호 작용 지원 : 요청 시점에 따라 다른 html 문서를 제공 - C/C++, Perl, shell program 등을 이용하여 작성 기본 동작 (HTML 코딩 기초) Form 태그 - HTML에서 사용자의 입력, 선택을 위한 태그 - text, button, check box 등의 일반적인 GUI 포함 Form 태그의 값 전달 방식 (METHOD, HTML 코딩 기초) - 사용자의 입력을 인코딩하여 전달함 - GET : 입력 값을 URL에 포함해 전달 - POST : 입력 값을 표준 입력을 통해..