본문 바로가기

전체 글

16강 Deadlocks 1 https://core.ewha.ac.kr/publicview/C0101020140411151510275738?vmode=f 반효경 [운영체제] 16. Deadlock 1 설명이 없습니다. core.ewha.ac.kr 데드락 : 한국말로 교착상태이다. 뭐 어떻게든 방법이없게 막혀있는 상황이다 도로보면 뭐 방법이없다. 기존에 데드락 상황을 보면 서로 젓가락 한짝씩 잡고 밥먹겠다고 하는 상황이다. 데드락: 일련의 프로세스들이 서로 자원을 쥔상태에서 상대가 가진 자원을 요구해서 서로 아무일도 하지못하는 교착상태이다. 자원은 하드웨어 자원일수도, 소프트웨어 자원일수도 있다. 하드웨어 프로세스가 할작업은 A하드에서 B하드에 옮기는 작업인데 각 프로세스들이 A랑 B를 각각 가져간다면 그상태로 둘다 잠들어 버릴것이다.. 더보기
15강 Process Synchronization 4(Concurrency Control) https://core.ewha.ac.kr/publicview/C0101020140411143154161543?vmode=f 반효경 [운영체제] 15. Process Synchronization 4 설명이 없습니다. core.ewha.ac.kr process synchronization(프로세스 동기화)를 concurrency control(병행 제어) 이라고 부르기도 한다고한다 -> 프로세스가 동시에 무언가를 실행하면서 나타나는 문제를 해결하는것이므로 용어는 다양하게 나타낼수있다. 프로그래머 관점에서 이러한 문제들을 해결할수있는 방법으로 세마포어가 있는것이고 세마포어 오류에대한 대안으로 프로그래밍 언어차원에서 제시하는것이 모니터이다.(우리는 자바에있는것 사용해야할것 같음) 모니터에서 프로세스가 활성화된.. 더보기
14강 Process Synchronization 3 https://core.ewha.ac.kr/publicview/C0101020140408134626290222?vmode=f 반효경 [운영체제] 14. Process Synchronization 3 설명이 없습니다. core.ewha.ac.kr 전 강의 정리~~~ 세마포어 변수값 1이라면 자원에 lock을 거는데 활용할수 있다.(mutex 용도) 변수값이 5,10 이러면 남아있는 자원의 갯수를 세는 용도가 된다. synchronization 관련하여 3가지의 고전적인 문제를 살펴볼 것이다. 1.Bounded Buffer Problem bounded buffer(buffer의 크기가 유한한 상태)환경에서 producer-consumer problem(생산자 소비자 문제) buffer : 임시로 데이터를 저.. 더보기
13강 Process Synchronization 2 https://core.ewha.ac.kr/publicview/C0101020140404151340260748?vmode=f 반효경 [운영체제] 13. Process Synchronization 2 설명이 없습니다. core.ewha.ac.kr 자 대망의 세마포어 세마포어에대한 설명한다함 추상자료형? -> object 랑 operation 으로 구성된다. 정수 추상자료형이라 하면 정수 숫자 자료형이 있고 그 숫자에 대해 정의된 연산이 어떤게 있는가? 덧셈 뺄셈 곱셈 등등 있는것처럼 추상자료형은 논리적으로 정의하는것이지 컴퓨터에서 실제로 어떻게 구현되는지에 대해서는 별개의 이야기이다. 정리하자면 추상자료형은 뭐 어떻게 구현하던간에 어떤일을 하는건지 정의해놓는건데 +가 어떻게 실제로 더해서 돌려주는지 내알바.. 더보기
12강 Process Synchronization 1 https://core.ewha.ac.kr/publicview/C0101020140404144354492628?vmode=f 반효경 [운영체제] 12. Process Synchronization 1 설명이 없습니다. core.ewha.ac.kr 임의의 프로세스 코드를 보면 두가지로 구성되어있다 ->공유데이터를 접근하는 critical section 과 그것이 아닌 코드 공유 데이터에 동시에 두가지 프로세스가 접근하면 race condition 이 생기니까 critical section 에 들어가기전에 lock을 거는 entry section 을 넣어서 여러 프로세스가 critical section 에 들어가는것을 막고 critical section 이 끝났으면 lock 을 풀어서 다른 프로세스가 crit.. 더보기
11강 CPU Scheduling 2/ Process Synchronization 1 https://core.ewha.ac.kr/publicview/C0101020140401134252676046?vmode=f 반효경 [운영체제] 11. CPU Scheduling 2 / Process Synchronization 1 설명이 없습니다. core.ewha.ac.kr cpu 스케쥴링 이어서 시작됨 Round robin 추가설명 round robin 이 가능 했던 이유는 context switching 메커니즘이 제공되기 때문에 가능했던 이야기이다. 근데 실제 세계에서는 context switching 이 불가하지않나 -> 은행같은경우나 화장실의경우 fcfs 인 이유가 똥을 중간에 끊었다가 다시 완벽하게 문맥에 맞게 쌀수는 없으니까 이런식으로 예시가 들었다. 지난번에 이은 순서라 5번부터 시작한.. 더보기
10강 CPU scheduling 1 https://core.ewha.ac.kr/publicview/C0101020140328151311578473?vmode=f 반효경 [운영체제] 10. CPU Scheduling 1 설명이 없습니다. core.ewha.ac.kr cpu 스케쥴링 드디어 시작 지난 수업에 설명했던 내용 일단 쭉 설명이다 -> cpu burst랑 프로그램들의 cpu 흐름들에 대한 설명 cpu 스케쥴링: 현재 ready queue에 들어와있는 프로세스들중 어떤 프로세스에게 cpu 를 줄것인가에 대한 메커니즘 cpu를 주는데 두가지 이슈가 있다. 1. 누구에게 줄것인가? 2.cpu 점유 시간(중간에 뻇을것인가? 얼마나 줄것인가?) 효율적으로 사람과 소통하는 것들에게 주로 주는 방향으로 설계됨 스케 쥴링 알고리즘에는 여러가지가 있.. 더보기
운영체제 9강 Process Management 2 https://core.ewha.ac.kr/publicview/C0101020140325134428879622?vmode=f 반효경 [운영체제] 9. Process Management 2 설명이 없습니다. core.ewha.ac.kr 프로세스 생성 실행 종료와 관련된 4가지 시스템콜을 살펴볼것임 프로세스 메니지먼트 마저 보는것임 프로세스는 복제생성함 복제 -> 프로세스의 context를 모두 복제함 부모의 code,data,stack 모두 복사함, cpu context 도 복제함 부모꺼 그대로 PCB 들도 베낌 공유하는것은 리눅스 같은 효율적인 운영체제에서는 그냥 죄다 카피하는게아니라 우선 공유할수있는 code,data,stack 같은 부모의 주소공간은 공유함 program counter 만 copy 해.. 더보기