분류 전체보기
-
Project2 : Argument PassingOS/Pintos 2022. 1. 10. 23:35
process_exec()함수 안에서 유저 프로그램을 위한 argument들을 설정하라 현재 Pintos는 아주 기본적인 기능만 갖추고 있다. 그래서 이번 Pintos 프로젝트의 목표는 PintOS가 user program을 적절히 실행하도록 만드는 것이다. 현재 PintOS는 명령어를 그 전체 문자열로 인지한다. 입력된 명령을 분절한 후에 명령어를 실행하는 데 이 때 User memory와 kernel Memory가 구분되어있음을 주의해야 한다. 메모리를 kernel memory와 User Memory로 구분하지 않고 사용하면 Memory를 관리하기 힘들다.. 예를 들어 각 프로세스가 서로 영역을 침범해서 오류를 발생시키거나 OS를 동작시키는 데 중요한 Kernel Code를 훼손할 수도 있다. Use..
-
Project2: User Programs(introduction)OS/Pintos 2022. 1. 10. 23:21
Introduction 이제 Pinto를 사용하여 작업하고 인프라 및 스레드 패키지에 익숙해지고 있으므로 사용자 프로그램 실행을 허용하는 시스템 부분에 대한 작업을 시작할 때입니다. The base code already supports loading and running user programs, but no I/O or interactivity is possible. ✅ 기본 코드는 이미 사용자 프로그램 로드 및 실행을 지원하지만 I/O 또는 상호 작용은 불가능합니다. you will enable programs to interact with the OS via system calls. ✅ 이 프로젝트에서는 프로그램이 시스템 호출을 통해 OS와 상호 작용할 수 있도록 합니다. You will be w..
-
[WEEK09]WILSW정글 2021. 12. 31. 00:56
Pintos 프로젝트 1주차동안의 배운 것! 개념 정리 운영체제에 대한 기본 개념강의를 들으며 내용을 이해하였다. [강의 개념 정리] https://seulgicoding.tistory.com/29?category=985032 1. Introduction to Operating Systems 1. Introduction to Operating Systems 운영체제란 무엇인가, 운영체제의 목적, 운영체제의 분류, 운영체제의 예, 운영체제의 구조 운영체제란? 컴퓨터 하드웨어 바로 위에 설치되어 사용자 및 다른 모든 seulgicoding.tistory.com https://seulgicoding.tistory.com/30?category=985032 2-1. System Structure & Program..
-
7-1~2. Deadlocks 1,2OS/운영체제 강의정리 2021. 12. 31. 00:35
7-1 Deadlocks 1 교착상태(deadlock), The Deadlock Problem, Deadlock 발생의 4가지 조건, Resource-Allocation Graph(자원할당그래프), Deadlock Prevention, Deadlock의 처리 방법, Deadlock Avoidance, Resource Allocation Graph algorithm, Banker's Algorithm, Example of Banker's Algorithm 7-2 Deadlocks 2 Deadlock의 처리 방법, Deadlock Avoidance, Example of Banker's Algorithm, p1 request(1, 0, 2), Deadlock Detection and Recovery, Dead..
-
6-3~4. Process Synchronization 3,4OS/운영체제 강의정리 2021. 12. 30. 23:33
6-3 Process Synchronization 3 Semaphores, Implementation, Classical Problems of Syncronization, Bounded-Buffer Problem, Readers-Writers Problem, Dining-Philosophers Problem, Monitor 6-4 Process Synchronization 4(Concurrency Control) Semaphores, Monitor, Bounded-Buffer Problem, Dining Philosophers Example Classical Problems of Synchronization (고전적인 3가지 문제!) Bounded-Buffer Problem(Producer-Consume..
-
6-2. Process Synchronization 2OS/운영체제 강의정리 2021. 12. 30. 20:17
6-2 Process Synchronization 2 Semaphores, Critical Section of n Processes, Block / Wakeup Implementation, Implementation, Two Types of Semaphores, Deadlock and Starvation, Dining-Philosophers Problem Semaphores 추상자료형 : Object와 Operation으로 구성됨 앞의 방식들을 추상화 시킴 공유자원을 획득하고 반납하는 것을 Semaphore가 처리해줌 Semaphore S : 정수값(integer variable)을 가질 수 있는데 그것이 자원의 개수라고 생각(즉 S가 5면, 자원이 5개있는것) P연산은 값을 획득하는 과정이고, V연산은..
-
6-1. Process Synchronization 1OS/운영체제 강의정리 2021. 12. 30. 20:06
6-1 Process Synchronization 1 데이터의 접근, Race Condition, OS에서의 race condition(3/3), Example of a Race Condition, The Critical-Section Problem, OS에서 race condition(1/3), If you preempt CPU while in kernel mode…, Initial Attempts to Solve Problem, 프로그램적 해결법의 충족조건, Algorithm 1, Algorithm2, Algorithm3(Peterson's Algorithm), Synchronization Hardware, Semaphores Initial Attempts to Slove Problem 두개의 프로세..
-
5-2. Process Synchronization 1OS/운영체제 강의정리 2021. 12. 30. 19:55
데이터의 접근 Race Condition race condition이란 두 개 이상의 프로세스가, 공용 데이터에 대한 접근이 어떤 순서에 따라 이루어졌는지에 따라 그 실행 결과가 같지 않고 달라지는 상황을 말한다. storage-box를 공유하는 execution-box가 여럿 있는 경우 경쟁상태 의 가능성이 있음 만약, CPU가 여러개가 있다면, 메모리를 공유하고 있다면, 하나의 CPU가 A라는 데이터를 읽어가는 동안에 또다른 CPU가 A라는 데이터를 읽어가면, Race-condition의 문제가 생길 수 있음 프로세스는 자기 자신만의 주소공간을 접근할 수 있지만, 공유 메모리를 사용할 수 있는 방법이 있는데 이런 상황에서도 문제가 생길 수 있음 운영체제 커널과 관련해서 생기는 문제가 가장 큰 문제임 ..