728x90
do_schedule
void do_schedule(int status)
- destruction_req를 비워주고(페이지 청소)
- 현재 스레드의 상태를 status로 바꾸고
- shedule 함수 실행
schedule
void schedule(void)
- 현재 실행 중인 스레드(curr)와 다음에 실행될 스레드(next)를 찾는다.
- 실행 준비: next의 상태를 running으로 바꿔주고 thread_ticks를 0으로 바꿔줌
- thread_launch() 호출: 실행 중이던 스레드 정보를 저장하고 다음 스레드의 정보로 교체함
memcpy
void *memcpy (void *dst_, const void *src_, size_t size)
- src에서 size만큼 읽어서 dst에 복사
- dst를 반환
memset
void * memset (void *dst_, int value, size_t size)
- dst의 size만큼을 value로 세팅(초기화)
load
static bool load (const char *file_name, struct intr_frame *if_)
- file_name으로 들어오는 command line을 parsing하여 파일을 실행시킴
- 나머지 argument들은 interrupt frame에 저장해줌.728x90
'🚩 3. Projects & Retrospect > SW사관학교 정글 4기' 카테고리의 다른 글
| pintos-kaist 시스템 콜 해석 (0) | 2022.05.29 |
|---|---|
| pintos alarm clock 테스트 에러 (0) | 2022.05.28 |
| [SW사관학교 정글] Week 08 회고 (0) | 2022.05.26 |
| 정글 Chapter 2. 탐험 준비 (C언어) 회고 (0) | 2022.05.19 |
| [SW사관학교 정글] Week 07 회고 (0) | 2022.05.19 |
댓글