본문 바로가기
SMALL

정리/운영체제(Operating System)7

7. Deadlock -The Deadlock Problem Deadlock(교착상태) 그림과 같이 누군가 희생을 하지 않고 자원(길목)을 가지고 있으면서 상대방의 자원(다른 길목)을 요구하는 상황 일련의 프로세스들이 서로가 가진 자원을 기다리며 block된 상태 Resource(자원) 하드웨어, 소프트웨어 등을 포함하는 개념 (ex : I/O device, CPU cycle, semaphore 등) 프로세스가 자원을 사용하는 절차 (Request, Allocate, Use, Release) Deadlock Example 1 시스템에 2개의 tape drive가 있다. 프로세스 P1과 P2 각각이 하나의 tape drive를 보유한 채 다른 하나를 기다리고 있다. Deadlock Example 2 Binary semaphor.. 2023. 5. 25.
6. Process Synchronization - 데이터의 접근 - Race condition(경쟁 상태) 하나는 1 증가 연산, 하나는 1 감소 연산 정상동작 : 하나를 더하고 하나를 빼면 원래의 값이 나옴 오동작 : 증가 연산과 감소 연산 동시 진행 후 증가 연산 값이 저장하고 감소 연산 값을 저장하면 감소 연산 값만 저장됨 - Process Synchronization 문제 공유 데이터(shared data)의 동시 접근(concurrent access)은 데이터의 불일치 문제(inconsistency)를 발생시킬 수 있음 일관성(consistency) 유지를 위해서는 협력 프로세스(cooperating process)간의 실행 순서(orderly execution)를 정해주는 메커니즘이 필요 Race condition 여러 프로세스들이 동시에.. 2022. 9. 1.
5. CPU Scheduling CPU Scheduling이 필요한 이유 : 사람과 interaction하는 Job과 CPU만 사용하려는 Job이 섞여있기 때문에 적절한 스케줄링이 필요. - CPU and I/O Bursts in Program Execution 위의 그림과 같이 컴퓨터의 모든 프로그은 다음 프로세스를 진행(프로그램마다 실행하는 방법은 다를 수 있음) EX) running -> I/O -> ready -> I/O ... 즉, CPU만 연속으로 실행하거나 I/O만 실행하는 컴퓨터는 없으며, 실행하는 단계는 burst라고 부른다. - 프로세스의 특성 분류 I/O bound process CPU를 잡고 계산하는 시간보다 I/O에 많은 시간이 필요한 job many short CPU bursts CPU bound process.. 2022. 8. 17.
4. Process Management 본 포스팅은 이화여자대학교의 반효경 교수님의 강의를 듣고 정리하였습니다. http://www.kocw.net/home/search/kemView.do?kemId=1046323 운영체제 운영체제는 컴퓨터 하드웨어 바로 위에 설치되는 소프트웨어 계층으로서 모든 컴퓨터 시스템의 필수적인 부분이다. 본 강좌에서는 이와 같은 운영체제의 개념과 역할, 운영체제를 구성하는 각 www.kocw.net [프로세스 생성(Process Creation)] Copy - on - Write (COW) : Write 발생 시 Copy 부모 프로세스(Parent Process : 1개)가 자식 프로세스(Children Process : N개)를 생성 (일반적으로 복제 생성) 프로세스의 트리(계층 구조)형성 프로세스는 자원을 필요료.. 2022. 8. 8.
3. Process 본 포스팅은 이화여자대학교의 반효경 교수님의 강의를 듣고 정리하였습니다. http://www.kocw.net/home/search/kemView.do?kemId=1046323 운영체제 운영체제는 컴퓨터 하드웨어 바로 위에 설치되는 소프트웨어 계층으로서 모든 컴퓨터 시스템의 필수적인 부분이다. 본 강좌에서는 이와 같은 운영체제의 개념과 역할, 운영체제를 구성하는 각 www.kocw.net [프로세스의 개념] "Process is a program in execution" - 프로세스란 실행중인 프로그램을 말한다. 프로세스의 문맥(context) - 특정 시점에서의 프로세스 상태 프로세스의 문맥을 알기 위해서는 다음 3가지를 확인해보아야 함 CPU 수행 상태를 나타내는 하드웨어 문맥 : Program Cou.. 2022. 6. 17.
2. System Structure & Program Execution 본 포스팅은 이화여자대학교의 반효경 교수님의 강의를 듣고 정리하였습니다. http://www.kocw.net/home/search/kemView.do?kemId=1046323 운영체제 운영체제는 컴퓨터 하드웨어 바로 위에 설치되는 소프트웨어 계층으로서 모든 컴퓨터 시스템의 필수적인 부분이다. 본 강좌에서는 이와 같은 운영체제의 개념과 역할, 운영체제를 구성하는 각 www.kocw.net [컴퓨터 시스템의 구조] 크게 컴퓨터 내부와 외부로 이루어짐 입출력 디바이스는 다음 그림 외에도 더 있음에 주의 CPU : 매 클럭마다 메모리의 instruction(기계어)을 하나씩 읽어서 실행 registers : CPU에 존재하는 읽어서 저장할 수 있는 작은 공간, 메모리 주소를 저장 mode bit : 현재 실행하.. 2022. 5. 31.
LIST