Operating System Concepts, 10/EAvraham Silberschatzhttps://www.wiley.com/en-us/Operating+System+Concepts%2C+10th+Edition-p-978111980037821\. The
1.1 What Operating Systems Do 1.2 Computer-System Organization 1.3 Computer-System Architecture 1.4 Operating-System Operations 1.5 Resource Mana
Operating-System Services User and Operating-System Interface System Calls System Services Linkers and Loaders Why Applications Are Operating-Sys
program : 저장되어 있는 file 형태program은 disk에 저장된 실행파일(prog.exe 또는 a.out)이다.수동적인 개체이다.process : program이 실행가능한 상태로 memory에 상주하게 되면, 그때부터 OS가 Handling하게 되는 p
Outline Multicore Programming Multithreading Models Threads Library Implicit Threading Threading Issues OS Exmaples
Scheduling 방식으로 3가지가 있다.Short-term Scheduling : memory에 이미 올라와있는 process들 중에 하나의 process를 선택하는 것.Mid-term Scheduling : Swapping. memory가 작아 모든 process
critical-section problem 이 뭔지? 왜 생기는지?process 여러 개가 공유 데이터를 가지고 있을 때 문제 발생. 어떻게 안생기게 하는지? c sw and hw solution of the critical-section problemse
MASM에 의한 Program 개발 과정 CPU의 명령어 실행 과정 Instruction Fetch Cycle : 실행할 명령어를 기억 장치로부터 읽어오는 과정 Instruction Decode Cycle : 읽어온 명령어를 해독하는 과정 Data Fetch Cycle : data가 필요한 경우 data를 읽어오는 과정 Execution Cycle : ...
8086 processor는 1MB까지의 memory를 취급한다.16bit 두 개를 갖고, 20bit를 만들어내어 addressing을 하면 1MB가 된다.
Data를 memory에 할당하기 위해 Data Type을 Define함.DB : Define Byte (1 byte)DW : Define Word (2 bytes)DD : Define Double Word (4 bytes)== Operand의 내용이나 장소를 지정하는
비교 결과에 따라 flag에 영향이 간다. 그 flag로 action을 취한다.두 개의 operand를 AND 취함JA : A > BJNB, JAE : A >= BJE : A == BJBE : A <= BJB : A < BJNE : A != B
우리가 쓰지 않은 code들이 나와있다.왜냐하면이 부분이 Data가 Code로 인식되었기 때문이다.assembly는 위의 data 영역 목적으로 쓴 것이 data인지 code인지 구분하지 않기 때문에code segment이기 때문에 code로 인식해버린다.위 문제점을
mov bx, offset L1→ mov bx, 001F 로 바뀌어있음 → 001F번지의 값 : 0x41 = 65 → ‘A’ 맞음
어딘가에 한 computer에 있는 메모장을 여러 사람이 동시에 편집한다고 가정.뭐가 문제가 될까? read 함수가 문제? write 함수가 문제?➡️ read하는 것이 문제이다.write하는 것은 simple하게 write하면 된다.단, write할 수 있는 조건을
modeling : 있는 그대로를 다 고려하여 일을 진행할 수 없다. 주변을 깨끗하게 정리하고 일을 체계적으로 만든다.System Modeling : 현대의 모든 OS에 deadlock이 있다.안 생기게 할 수도 있다. 그런데 왜 생길까?➡️ 우선 deadlock이 해
Background OS가 하는 여러가지 목표 중에 HW Resource를 보호하는 것이었다. Memory도 Resource이다. 니 데이터가 300번지에 있다라고 알려주고, 실제로는 다른 번지에 있다. (보호하기 위해서) ➡️ 내가 알고 있는 주소가 실제 주소가 아닐
CPU가 바로 physical memory를 읽는 것이 가장 기본이었다.하지만 Hole 관리가 어렵고 시간이 오래걸리는 문제가 있었다.(External Fragmentation을 극복하기 위한 Compaction 또한 memory를 읽고 쓰는 데 비용이 발생.)그래서