250x250
반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 29 | 30 | 31 |
Tags
- hadoop
- GCP
- tensorflow text
- flask
- Retry
- requests
- API Gateway
- youtube data
- login crawling
- spark udf
- 유튜브 API
- Airflow
- subdag
- correlation
- Counterfactual Explanations
- 공분산
- integrated gradient
- grad-cam
- GenericGBQException
- BigQuery
- UDF
- gather_nd
- XAI
- top_k
- 상관관계
- airflow subdag
- TensorFlow
- chatGPT
- session 유지
- API
Archives
- Today
- Total
데이터과학 삼학년
시스템 콜, API 본문
반응형
시스템 프로그래밍 핵심 기술 - 시스템콜과 API
-
시스템 프로그래밍의 기반요소
-
시스템 콜 (System call)
-
C 라이브러리
-
C 컴파일러
→ 사용자 영역에서의 시스템 프로그래밍
-
시스템 콜 : 운영체제 리소스나 서비스 요청을 위해, 사용자 영역에서 커널영역으로 들어가는 함수
-
주요 시스템 콜 : read(), write(), open() 등
-
리눅스/유닉스는 C언어로 만들어져 있어서 시스템콜도 C언어로 구현
-
시스템 콜 구현 방법
-
eax 레지스터에 시스템 콜 번호 넣고
-
ebx 레지스터에 시스템 콜에 해당하는 인자값을 넣고
-
소프트웨어 인터럽트 명령을 호출하면서 0X80 값을 넘겨줌
-
CPU는 사용자 모드를 커널 모드로 바꿔줌
-
IDT(Interrupt Descripotr Table)에서 0X80에 해당하는 주소함수)를 찾아서 실행
-
syster_call() 함수에서 eax로부터 시스템 콜 번호를 찾아서 해당번호에 맞는 시스템 콜 함수로 이동
-
해당 시스템 콜 함수 실행 후 다시 커널 모드에서 사용자모드로 변경하고 다음 코드 실행
API(Application Programming Interface)
-
응용프로그램과 분리된 하위 호환 인터페이스
-
시스템 콜 래퍼, 입출력 라이브러리 등
-
동적 라이브러리 → 어떤 실행 파일의 실행이 필요할때만 해당 라이브러리가 프로세스위로 올려져서 해당 프로세스를 실행할 수 있도록 되어있는 것
위 자료는 fastcampus를 토대로 작성하였음을 밝힙니다.
728x90
반응형
LIST
'Computer Science > System Programming' 카테고리의 다른 글
하드링크, 소프트링크, 특수 파일 (0) | 2020.01.18 |
---|---|
리눅스 파일 시스템 & 탐색 (0) | 2020.01.18 |
Foreground 와 background 프로세스, 프로세스 관리 및 제어 (0) | 2020.01.18 |
Shell 기초 - 리다이렉션과 파이프 (0) | 2020.01.18 |
Shell - bashshell 기초 (0) | 2020.01.17 |
Comments