출처 : http://sunyzero.tistory.com/191출처 블로그가 너무 훌륭하다. fork란?fork는 유닉스/리눅스 계열에서 새로운 프로세스를 만드는 표준 함수이다. 그런데 fork는 새로운 프로세스를 만들 때 기존 프로세스를 복제하는 방식을 사용한다. 이 때 원본 프로세스를 부모 프로세스(parent process)라고 부르고 새로 복제된 프로세스를 자식 프로세스(child process)라고 부른다. 1. 부모와 자식 프로세스의 관계현실 세계에서 부모와 자식은 끊을 수 없는 강한 연결점이 있지만 유닉스 계열의 부모, 자식 프로세스는 그런 것과는 상관없다. 그냥 유전자가 복제되듯이 선천적으로 물려받는 정적 자원 만을 복제하는 것이라고 생각하면 된다. 정적 자원에는 file, mask, m..
시스템 콜?정의시스템 콜은 응용프로그램에서 운영체제에게 기능(시스템 자원)을 수행해달라고 하는 하나의 수단이다. 효과저수준 프로그래밍을 몰라도 되므로 프로그래밍이 쉬워지며, 프로그램 호환성이 좋아진다. 사용자 요청을 처리하기전에 인터페이스 수준에서 올바른 요청인지 검사할 수 있으므로 시스템의 보완성이 높아진다. 시스템콜의 이해 사용자프로세서가 소프트웨어 인터럽트를 통해 커널의 기능을 이용하기 위한 서비스를 요청하는 하나의 방법이다. 처리방식 사용자 프로세서가 시스템콜을 요청하면 제어가 커널로 넘어간다. (사용자모드 -> 커널모드) 커널은 내부적으로 각각의 시스템콜을 구분하기 위해 기능별로 고유번호를 할당해 놓는다. 해당번호는 커널내부에 제어루틴을 정의한다. 커널은 요청받은 싯템 콜에 대응하는 기능번호를 ..
http://www.lug.or.kr/docs/LINUX/others/01-05-5.htm
RTOS의 정의리얼타임은 한마디로 “빠르다”라고 표현할 수 있다.리얼타임에 대해서는 많은 부분이 오해로 남아있다. 일반적으로는 어떤 사상이 발생한 것을 받아 즉시 응답하는 것을 리얼타임이라고 말하기도 한다.이것은 즉시 응답이라는 것과 우리가 오해하고 있는 등시성(우리는 리얼타임이라 하면 동일시간에 발생하는 것으로 오해하는 경우가 비일비재하다.)과는 약간은 다른 표현이 된다. 쉽게 말하자면, 리얼타임은 등시성보다 완만한 의미를 가진 단어이다."진정한 의미의 리얼타임이란 허용시간내에 응답하는 것을 의미한다." 리얼타임이라 하면 소프트 리얼타임과 하드 리얼타임의 두 종류로 분류할 수 있다.(굳이 나누자면)소프트 리얼타임 시스템에서는 각 태스크는 시스템에 의해 가능한 빨리 실행되지만, 어떤 정해진 시간내에 종료..
FSM Labs 2001에서 2001년에 공개한 구조는 위와 같다. 기존 리눅스의 구조에 RT리눅스를 추가한다. 그러면 두개의 스케줄러가 동작하게 된다. http://blog.naver.com/ahtz?Redirect=Log&logNo=20124311485 http://www.docstoc.com/docs/19697402/%EC%8B%A4%EC%8B%9C%EA%B0%84-%EC%9A%B4%EC%98%81%EC%B2%B4%EC%A0%9C-(Hard-Real-Time-Operating-System)-%E3%80%8CRTLinux%E3%80%8D
LKM Loadable kernel module모듈 프로그래밍 기초 정보- 모듈은 커널에 코드를 삽입할 수 있데 해준다.- 모듈은 원하는 프로그램을 작성하고, 컴파일만 하면된다.- 일반적인 C프로그램과 절차는 같지만 main()함수가 없다.- 표준 C라이브러리를 사용할 수 없다.- 실수 연산을 할 수 없다는 제약이 있다.- 디바이스 추가하는 방법을 사용한다. 개발 절차1. 모듈 프로그램 작성2. 모듈 프로그램 컴파일 3. 모듈 로드 (insmod 명령)4. 로드된 모듈확인 (lsmod 명령)5. 모듈 제거 (rmmod 명령) 모듈 프로그램의 구성모듈이 커널에 올라가기 앞서 모듈을 로드할때 수행되는 최고하 루틴(init_module)이 있고 모듈이 재거할때 사용되는 종료 루틴(exit_module)이 있다..