분류 전체보기141 8.2. 메모리 관리 Memory Management 2 이화여자대학교 반효경 교수님의 운영체제 강의를 요약한 내용입니다. 틀린 부분이 있다면 지적해주시면 감사하겠습니다. 강의 링크 1. Paging 연속할당처럼 레지스터 두 개만으로는 paging을 할 수 없다. page table : 논리 메모리의 페이지 개수만큼 엔트리가 존재 물리 메모리를 나눈 것은 페이지 프레임이라 한다. 1.1. 주소 변환 구조 페이지 내에서의 offset부분은 주소 변환에서 영향이 없다. 내부에서의 상대적 위치는 똑같다. 보통 페이지 크기 4kb -> 엔트리가 실제로 100만개 정도.. -> 용량이 크기 때문에 cpu의 레지스터에 못 들어감 -> 심지어 프로그램마다 있다. -> 메모리에 집어넣어 버림 1.2. 페이지 테이블의 구현 메인 메모리에 상.. 2022. 8. 4. 8.1. 메모리 관리 Memory Management 1 이화여자대학교 반효경 교수님의 운영체제 강의를 요약한 내용입니다. 틀린 부분이 있다면 지적해주시면 감사하겠습니다. 강의 링크 1. Logical address vs. Physical Address 1.1. Logical address(=virtual adderess) 프로세스마다 독립적으로 가지는 주소 공간 각 프로세스마다 0번지부터 시작 cpu가 보는 주소는 logical address임 주소는 바뀌지만 그 안에 코드 상의 주소는 logical address로 남아있다. 1.2. Physical address 메모리에 실제 올라가는 위치 실제로 사용하려면 논리적 주소는 물리적 메모리 어딘가에 올라가야함 주소 바인딩 : 주소를 결정하는 것 심볼로된 어드레스 사용 -> .. 2022. 8. 4. 7.2. 데드락 Deadlock 2 이화여자대학교 반효경 교수님의 운영체제 강의를 요약한 내용입니다. 틀린 부분이 있다면 지적해주시면 감사하겠습니다. 강의 링크 2.3. Deadlock Detection and recovery 방치하되 탐지 루틴을 둔다. 시스템이 느려지거나 하면 데드락을 탐지해서 해결 자원당 인스턴스 하나 -> 자원할당그래프 자원당 인스턴스 여러개 -> 표 사실상 하나일때도 표로하는게 편하다. 자원할당그래프는 표의 서브셋 느낌이다. avoidance도 마찬가지. 2.3.1. Detection 자원할당그래프에서 자원을 제거해서 wait-for graph를 그린다. 특정 프로세스가 요청한 자원을 어떤 프로세스가 가졌는지 가르키게 됨. P1이 (2,0,2)를 요청했지만 가용 자원이 없는 상황 낙관적으로 요청.. 2022. 8. 3. 7.1. 데드락 Deadlock 1 이화여자대학교 반효경 교수님의 운영체제 강의를 요약한 내용입니다. 틀린 부분이 있다면 지적해주시면 감사하겠습니다. 강의 링크 1. Deadlock 데드락이란 일련의 프로세스들이 서로가 가진 자원을 기다리며 block된 상태이다. 앞의 그림을 보면 서로 앞의 차가 빠지길 기다리지만 서로가 서로를 막아 움직일 수 없다. 위와 같은 상태이다. 예시 : 테이프가 서로 한쪽식 가지고 원하는 경우 Bianry semaphores 자원 사용 단계 : 요청(Request), 획득(Allocate), 사용(Use), 반납(Release) 1.1. Deadlock 발생의 4가지 조건 Mutual exclusion(상호 배제) 매 순간 하나의 프로세스만이 자원을 사용 No preemption(비선점) 프.. 2022. 8. 3. 6.3. 프로세스 동기화 Process Synchronization 3 이화여자대학교 반효경 교수님의 운영체제 강의를 요약한 내용입니다. 틀린 부분이 있다면 지적해주시면 감사하겠습니다. 강의 링크 1. 동기화의 고전적인 문제들 1.1. Bounded-Buffer Problem (Producer-Consumer Problem) 버퍼의 크기가 유한하다. 공유 데이터 buffer 자체 및 buffer 조작 변수(시작 위치를 뜻함) 두 개의 프로세스 종류 : Producer, Consumer 각각 여러 개 Producer : 공유 버퍼에 데이터를 만들어서 집어넣는 역할 Consumer : 공유 버퍼에 데이터를 꺼내감 문제1 mutual exclusion -> bianry semaphore 같은 empty buffer에 Producer .. 2022. 8. 2. 6.2. 프로세스 동기화 Process_Synchronization 2 이화여자대학교 반효경 교수님의 운영체제 강의를 요약한 내용입니다. 틀린 부분이 있다면 지적해주시면 감사하겠습니다. 강의 링크 1. Semaphores 위키피디아 세마포어 두 개의 원자적 함수로 조작되는 정수 변수 공유 자원에 대한 접근을 제한하는 방법으로 사용 모든 교착 해결하진 않음. 추상 자료형의 일종. 프로그래머가 편리해짐. 1.1. busy waiting 이용한 구현 방식 lock/unlock 을 semaphore을 통해 가능 공유자원을 획득하고 반납하는 것을 처리해줌 아래 두 가지 연산은 atomic해야함. P 연산 공유데이터를 획득하는 과정 S값이 0이하면 while문을 돌다가 자원 생기면 가져감 마찬가지로 busy waiting 생김 V 연산 다.. 2022. 7. 30. 이전 1 2 3 4 5 6 7 8 ··· 24 다음