pintos [PINTOS_PROJECT1] ALARM CLOCK 1. thread_sleep() 2. timer_sleep() 3. thread_awake() 4. update_next_tick_to_awake(), get_next_tick_to_awake() 5. timer_interrupt()... Alarm Clockpintosproject#1OSAlarm Clock pintOS project2: User Programs -system call int open (const char *file); Returns a nonnegative integer handle called a "file descriptor" (fd), or -1 if the file could not be opened. File descriptors are inherited(상속된다) by child processes. When a single file is ope... pintospintos [PintOS] WIL - week08 기존의 loop 기반 wait() 방식 대신 sleep_list(queue)를 만들어서 timer_sleep() 함수 호출 시 running 중인 thread를 blocked 상태로 만들고(ready_list에서 제거) sleep_list에 넣어준다. ready_list에 새로 추가된 thread의 우선순위가 현재 CPU를 점유중인(running) thread의 우선순위보다 높으면 기존 th... pintosWILOSOS Operating System (PintOS 프로젝트 1-1) 프로세스 프로세스(process)는 컴퓨터에서 연속적으로 실행되고 있는 컴퓨터 프로그램을 말한다. 프로그램은 일반적으로 하드 디스크 등에 저장되어 있는 실행코드를 뜻하고, 프로세스는 프로그램을 구동하여 프로그램 자체와 프로그램의 상태가 메모리 상에서 실행되는 작업 단위를 지칭한다. 스레드(thread)는 어떠한 프로그램 내에서, 특히 프로세스 내에서 실행되는 흐름의 단위를 말한다. 일반적으로... OSCSpintosCS [pintOS] github으로 팀프로젝트 관리하기 (pintOS 팀플 맞춤) 문서의 목표 pintOS 과제를 수행하며 팀 내에서 수립했던 repository를 관리 정책을 공유 정책 수립 시 고려사항 팀원 모두 1회 이상 Pull Request를 올려 팀 프로젝트에 흔적을 남길 수 있어야 함 master branch에는 모두가 이해하고 합의한 코드가 반영되도록 함 문제 해결 단위를 pintOS 주차별 하위 문제와 일치시켜, 문제 발생 시 되돌아갈 수 있는 지점을 구체... gitpintosgithubgit [PintOS] 1. Introduction 앞으로의 PintOS 과제를 통해서 어떠한 모습의 PintOS를 만들 것인지 아래 그림으로 나타내었다. 현재 상태의 PintOS 최종 상태의 PintOS Init Process 관련 주요 함수 운영체제 과목을 들었다면 위의 그림에서 무엇이 문제인지 알 수 있을 것이다. 내부 코드로 한 번 살펴보자. 다음은 PintOS 내부에 프로그램을 실행시키는 주요 함수들이다. 응용 프로그램을 실행시키면 ... pintospintos [PintOS] Project 3 - Introduction 즉, 페이지 크기로 균등하게 나눌 수 있는 가상 주소에서 시작 해야 합니다 . 페이지 테이블(page table)은 CPU가 가상 주소를 실제 물리 주소로 변환하기 위해 사용하는 데이터 구조이다. Supplemental page table(추가 페이지 테이블) supplemental page table은 각 페이지에 대한 추가 데이터로 페이지 표를 보완합니다. 가장 중요한 것은 페이지 폴트시... pintospintos
[PINTOS_PROJECT1] ALARM CLOCK 1. thread_sleep() 2. timer_sleep() 3. thread_awake() 4. update_next_tick_to_awake(), get_next_tick_to_awake() 5. timer_interrupt()... Alarm Clockpintosproject#1OSAlarm Clock pintOS project2: User Programs -system call int open (const char *file); Returns a nonnegative integer handle called a "file descriptor" (fd), or -1 if the file could not be opened. File descriptors are inherited(상속된다) by child processes. When a single file is ope... pintospintos [PintOS] WIL - week08 기존의 loop 기반 wait() 방식 대신 sleep_list(queue)를 만들어서 timer_sleep() 함수 호출 시 running 중인 thread를 blocked 상태로 만들고(ready_list에서 제거) sleep_list에 넣어준다. ready_list에 새로 추가된 thread의 우선순위가 현재 CPU를 점유중인(running) thread의 우선순위보다 높으면 기존 th... pintosWILOSOS Operating System (PintOS 프로젝트 1-1) 프로세스 프로세스(process)는 컴퓨터에서 연속적으로 실행되고 있는 컴퓨터 프로그램을 말한다. 프로그램은 일반적으로 하드 디스크 등에 저장되어 있는 실행코드를 뜻하고, 프로세스는 프로그램을 구동하여 프로그램 자체와 프로그램의 상태가 메모리 상에서 실행되는 작업 단위를 지칭한다. 스레드(thread)는 어떠한 프로그램 내에서, 특히 프로세스 내에서 실행되는 흐름의 단위를 말한다. 일반적으로... OSCSpintosCS [pintOS] github으로 팀프로젝트 관리하기 (pintOS 팀플 맞춤) 문서의 목표 pintOS 과제를 수행하며 팀 내에서 수립했던 repository를 관리 정책을 공유 정책 수립 시 고려사항 팀원 모두 1회 이상 Pull Request를 올려 팀 프로젝트에 흔적을 남길 수 있어야 함 master branch에는 모두가 이해하고 합의한 코드가 반영되도록 함 문제 해결 단위를 pintOS 주차별 하위 문제와 일치시켜, 문제 발생 시 되돌아갈 수 있는 지점을 구체... gitpintosgithubgit [PintOS] 1. Introduction 앞으로의 PintOS 과제를 통해서 어떠한 모습의 PintOS를 만들 것인지 아래 그림으로 나타내었다. 현재 상태의 PintOS 최종 상태의 PintOS Init Process 관련 주요 함수 운영체제 과목을 들었다면 위의 그림에서 무엇이 문제인지 알 수 있을 것이다. 내부 코드로 한 번 살펴보자. 다음은 PintOS 내부에 프로그램을 실행시키는 주요 함수들이다. 응용 프로그램을 실행시키면 ... pintospintos [PintOS] Project 3 - Introduction 즉, 페이지 크기로 균등하게 나눌 수 있는 가상 주소에서 시작 해야 합니다 . 페이지 테이블(page table)은 CPU가 가상 주소를 실제 물리 주소로 변환하기 위해 사용하는 데이터 구조이다. Supplemental page table(추가 페이지 테이블) supplemental page table은 각 페이지에 대한 추가 데이터로 페이지 표를 보완합니다. 가장 중요한 것은 페이지 폴트시... pintospintos