티스토리 뷰
[System Programming]#1 System Call - Systems Calls and Library Functions
DevOpser 2017. 9. 30. 16:58#1.1 Systems Calls and Library Functions
* System Call: 시스템 콜은 응용프로그램에서 운영체제에게 기능(시스템 자원)을 수행 해달라고 하는 하나의 수단이다.
* 효과:
- 저수준 프로그래밍을 몰라도 되므로 프로그래밍이 쉬워지며 프로그램 호환성이 좋아진다.
- 사용자 요청을 처리하기 전에 인터페이스 수준에서 올바른 요청인지 검사할 수 있다.
* 이해:
- 사용자 프로세서가 소프트웨어 인터럽트를 통해 커널의 기능을 이용하기 위한 서비스를 요청하는 방법
* 처리방식:
- 사용자 프로세서가 시스템 콜을 요청하면 제어가 커널로 넘어간다.
- 커널은 내부적으로 각각의 시스템 콜을 구분하기 위해 기능별로 고유번호를 할당한다.
- 해당번호는 커널 내부에 제어루틴을 정의한다.
- 커널은 요청받은 시스템 콜에 대응하는 기능번호를 확인한다.
- 커널은 그 번호에 맞는 서비스 루틴을 호출하게 된다.
- 서비스 루틴을 모두 처리하고나면 커널모드에서 사용자모드로 다시 넘어온다.
- System Call의 구조
* Library Functions
- 일반적으로 System call을 호출한다.
- Library Functions의 예 :
- printf()
- scanf()
- fopen()
- fclose()
- gets()
- puts()
- getw()
- fread()
- fseek()
* System Calls
- 커널 함수를 호출하는 C 함수처럼 보인다.
- 사용자 프로그램으로부터 호출될 수 있다.
- System Calls의 예
- open()
- creat()
- close()
- read()
- write()
- lseek()
- unlink()
- 라이브러리 system calls이 포함이 된다.\
-.o 파일을 검사하기 위해서는 'ar' 명령(% ar -t)을 사용한다.
- nm 명령어(nm -g)를 사용해서 구현된 기능을 확인할 수 있다.
'프로그래밍 > System Programming' 카테고리의 다른 글
[System Programming]#2 File - File System 소개 (0) | 2017.09.30 |
---|---|
[System Programming]#2 File - File Info (0) | 2017.09.30 |
[System Programming]#2 File - File Types (0) | 2017.09.30 |
[System Programming]#2 File - File Structure (0) | 2017.09.30 |
[System Programming]#1 System Call - System Call Structure (0) | 2017.09.30 |
- Total
- Today
- Yesterday
- 아디다스백클랜드
- 보드고글
- 고글
- BACKLAND
- iptime putty
- iptime ssh
- 스키고글
- 보드웨어
- 출시
- 아디다스
- iptime telnet
- 블루미러렌즈
- 비발디파크
- 라프
- 아이다스아이웨어
- 스노우고글
- 스키장고글
- nas2dual
- 아디다스스노우고글체험단
- 처음처럼
- 모집단
- 백클랜드
- 아디다스아이웨어
- 아디다스고글
- 아디다스스노우고글
- LIKEAFIRST
- IPTIME NAS
- ADIASEYEWEAR
- 스키웨어
- ADIDASEYEWEAR
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |