Overview유저에서 프로세스 관리, device 제어 등 기능을 수행할 때, System call을 사용하여 커널로 요청을 보낸다.이때 Trap이라는 software Interrupt을 걸어 진행중인 flow를 커널 mode로 변경한다.kernel에서 작업이 끝나면 레지스터를 통해 return을 반환하고 user mode로 변경된다. Pintos를 기준으로 system call을 알아본다.User Invokeprint와 같이 stdout으로 출력 또는 stdin 입력은 standard library 내부에서 write system call wrapper로 구현되어 있다.해당 system call은 실제로 다음과 같은 어셈블리 코드로 구현된 매크로로 구현되어있다.#define syscall0(NUMBE..
vscode 우분투 환경에서 진행하는 핀토스는 vscode에서 remote-ssh로 접속해 ide 환경에서 작업 가능하다. 여러 파일을 이동해가며 구현해야 하기에 IDE 환경에서 하는걸 추천함 추천 extension remote-ssh vscode에서 local환경 외에 ubuntu 서버에 접속해 local 환경처럼 작업할 수 있게 하는 extension C/C++ extension C언어 snippet, debug 등 다양한 기능을 하는 extension으로 깔아두면 함수 ref 이동, 문법오류 등 도움 많이 됨 다만 pintos환경에선 실행에 따라 #ifdef 와 같이 전처리 지시어등이 있는데 이를 에디터에서 적용해서 볼려면 추가적으로 properties 설정을 해주어야 한다. control + sh..
- Total
- Today
- Yesterday
- 토이프로젝트
- Web
- FastAPI
- 백준
- 앱
- 뿌요뿌요
- 코딩
- 해커톤
- Python
- 구름ide
- pintos
- 사이버정보지식방
- 분할 정복
- 런타임 에러
- ttyd
- 싸지방
- 시간 초과
- 프로젝트
- pvm
- 리눅스
- System call
- 정보보호병
- codeanywhere
- 뿌요뿌요 테트리스
- react
- 서버 관리
- C
- 웹IDE
- letsencrypt
- Django
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |