System/OS

System/OS

운영체제 10] 가상 메모리

##본 포스팅은 운영체제 강의 '이화여자대학교 운영체제 강의 - 반효경 교수님'를 보고 정리한 내용입니다. Demand Paging 가상 메모리에서의 주소 변환은 운영체제의 관여가 있다. Demand Paging은 요청이 있으면 해당 page를 메모리에 올리는 것이다. 전체 page를 올리는 것이 아니라 '해당 page'만을 올려, - I/O 양의 감소 : 필요한 I/O가 감소한다 - Memory 사용량 감소 : 일부분의 page만 올리기 때문에 사용하는 memory양이 감소한다 - 더 많은 사용자 수용/빠른 응답 시간 을 기대할 수 있다. [Valid/Invalid bit의 사용] Paging 기법에는 각 Page마다 valid/invalid bit가 있는데, 여기서는 아래와 같이 구성되어있다. 당장 ..

System/OS

운영체제 6주차] 병행제어(2)

##본 포스팅은 운영체제 강의 '이화여자대학교 운영체제 강의 - 반효경 교수님'를 보고 정리한 내용입니다. 동기화와 관련된 문제 1. Bounded-Buffer Problem (Producer-Consumeer Problem) 크기가 유한한 공유 버퍼를 다룰 때 생기는 문제이다. 생산자 프로세스는 데이터를 만들어 비어있는 버퍼에 넣는 역할을 하며, 소비자는 데이터를 꺼내 사용하는 역할을 한다. 생산자가 버퍼에 입장을 할 때는 lock을 걸어야하고, 소비자가 버퍼에 접근을 할 때는 lock을 걸어 데이터를 한 소비자만 접근할 수 있도록 해야한다. - mutual exclusion : vinary semaphore - resource count : 소비자와 생산자에게 표시하기 위한, 남은 buffter의 수..

System/OS

운영체제 6강] Process Synchronization

##본 포스팅은 운영체제 강의 '이화여자대학교 운영체제 강의 - 반효경 교수님'를 보고 정리한 내용입니다. 데이터의 접근 동기화가 필요한지, 이게 뭔지 등에 대해 알아보기 전에 데이터의 접근이 어떻게 이뤄지는지 알아야한다. 데이터를 접근할 때는, 1) 데이터가 저장되어있는 곳(메모리, 하드디스크)에 가서 데이터를 가져오고, 2) 가져온 데이터로 연산을 하는 곳(CPU, 컴퓨터 내부)에서 수행을 하고 3) 바뀐 데이터, 결과를 저장소(메모리, 하드디스크)에 저장을 한다. 하지만, 문제는 데이터를 읽어가는 곳이 여러곳일 때 발생한다. 연산 주체가 여럿이 있으면, 연산이 끝난 뒤에는 데이터가 원하는 대로 조작되지 않을 수 있다. 이렇게 공유 데이터를 여럿이 접근하려고 할 때 발생하는 문제를 'Race Cond..

System/OS

운영체제 5강] CPU Scheduling

##본 포스팅은 운영체제 강의 '이화여자대학교 운영체제 강의 - 반효경 교수님'를 보고 정리한 내용입니다. Multiple-Processor Scheduling CPU가 여러개인 경우, 병행 제어를 해야하기 때문에 스케줄링은 더욱 복잡해진다. Homogeneous processor인 경우 Queue에 한줄러 세워서 각 프로세서가 알아서 꺼내가게 할 수 있음 반드시 특정 프로세서를 이용해야하는 프로세스가 있는 경우엔 문제가 복잡해짐 Load sharing CPU가 골고루 일하게 하는 것이 중요한데, 일부 프로세서에 job이 몰리지 않도록 적절히 공유하는 메커니즘을 사용 별개의 큐를 두는 방법 vs 공동 큐를 사용하는 방법 Symmetric Multiprocessing(SMP) 각 프로세서가 각자 알아서 스..

System/OS

운영체제 4강]

보호되어 있는 글입니다.

System/OS

운영체제 3-3~3-4] 스케줄러

##본 포스팅은 운영체제 강의 '이화여자대학교 운영체제 강의 - 반효경 교수님'를 보고 정리한 내용입니다. 스케줄러 운영체제에는 CPU 스케줄러, dist 스케줄러 등이 있는데 분류를 해보자면 다음과 같다. **스케줄러 소프트웨어가 따로 있는 것이 아니라, 운영체제에서 스케쥴링 하는 코드를 의미한다. Long-term scheduler job scheduler 프로세스 new ->(admitted) -> ready 의 역할을 한다. 즉, 메모리를 누구에게 주는 역할을 한다. 너무 많거나 적은 프로세스가 허용된다면 문제가 발생할 수 있기에 degree of Multiprogramming을 제어한다. time sharing system에는 보통 없고 바로 ready 상태로 간다. 대신 medium을 둔다. ..

hololo
'System/OS' 카테고리의 글 목록