개발/💻 CS 지식(11)
-
[ 운영체제 ] Process Synchronization ( 2 )
보호되어 있는 글입니다.
2025.06.14 -
[ 운영체제 ] Process Synchronization ( 1 )
데이터의 접근 컴퓨터 내에서 발생하는 연산은 아래와 같은 과정을 거친다 Storage-Box(S-Box)에서 사용할 data를 꺼내오고Execution-Box(E-Box)에서 꺼내온 data로 연산을 한 뒤Storage-Box(S-Box)에 다시 넣는다 이때 E-Box에서 S-Box에 동시에 접근하는 상황이 발생하면data를 일관되게 유지하는 데에 문제가 생길 수 있다이러한 문제를 Race Condition이라고 한다 E-Box가 S-Box에 동시에 접근하게 되는 경우는 크게 두가지가 있다- Multiprocessor(CPU가 여러 개일 때) : 서로 다른 CPU의 서로 다른 Process가 동시에 Kernel Memory의 data에 접근한 경우- Multiprocess(Process가 ..
2025.04.17 -
[ 운영체제 ] CPU Scheduling
CPU Burst & I/O Burst 프로그램은 CPU burst와 I/O burst를 번갈아가며 수행된다- CPU burst : CPU가 주도권을 잡고 기계어를 수행하는 구간- I/O burst : I/O가 수행되는 구간, process는 blocked 상태 Process의 특성 분류 I/O bound process : CPU를 잡고 계산하는 시간보다 I/O에 많은 시간이 필요한 프로그램: 사람과 interaction을 많이 하는 프로그램: many short CPU burstsCPU bound process: CPU를 길게 사용하는 계산 위주의 프로그램: few very long CPU bursts Process 종류에 따른 CPU burst Time 분포여러 종류의 process가..
2025.04.13 -
[ 운영 체제 ] Process Management
프로세스 생성 ( Process Creation ) 프로세스 생성 개요- 부모 프로세스가 자식 프로세스 생성 : 시스템콜을 통해 프로세스가 수행하지 못하는 작업들(PCB 복사, Memory 지정 등)을 수행- 프로세스의 트리(계층 구조) 형성- 프로세스는 자원을 필요로 함 : ( 1 ) 운영체제로부터 받는다 ( 2 ) 부모와 공유한다- 자원의 공유 : ( 1 ) 부모와 자식이 모든 자원 공유 ( 2 ) 일부를 공유 ( 3 )전혀 공유하지 않음- 수행 : ( 1 ) 부모와 자식이 공존하며 수행되는 모델 ( 2 ) 자식이 종료가 될 때까지 부모가 기다리는(wait, blocked) 모델 주소 공간(Address Space)- 자식은 부모의 공간을 그대로 복사함 (bi..
2025.04.12 -
[ 운영체제 ] Process
Process: 실행 중인 프로그램 Context: Process의 문맥 ( 현재 상태, 과거 기록 ) Context 종류- 하드웨어 문맥 : CPU 수행 상태 -> Program Counter : CPU가 다음에 실행할 명령어의 주소 저장 - 프로세스의 주소 공간인 code를 가르키고 있음 -> Register : CPU 연산에 필요한 데이터 저장- 프로세스의 주소 공간 : code, data, stack- 프로세스 관련 커널 자료 구조 : 커널(OS) 또한 함수를 통해 작동하기 때문에 관련 데이터를 저장하는 자료 구조(주소 공간)이 존재함 -> PCB(Process Control Block) : 커널의 주소 공간인 data 내에 있음 -> Kernel Stack ..
2025.04.01 -
[ 운영체제 ] 컴퓨터 시스템 구조 & 프로그램의 실행
컴퓨터 시스템 구조 컴퓨터 시스템 구성 - CPU, Memory, OS, Disk 컴퓨터를 크게 내부와 외부로 나눠서 보자면,내부에서는 CPU, Memory, OS(Memory에 상주)가 가장 큰 부분을 차지하며,외부는 I/O 장치(Disk)들로 이루어져 있다 CPU는 기계어를 직접 연산하는 장치이며CPU의 작업 공간을 Memory라고 한다Disk는 외부(사용자)의 입출력을 담당하는 장치다 이때 Disk에도 간단한 연산을 수행하는 Disk Controller와,Disk Controller의 작업 공간인 Local Buffer가 달려 있다즉, 외부의 CPU 역할을 Disk Controller가, Memory 역할을 Local Buffer가 수행해주는 것이다Disk Controller는 CPU와 I/O 사이..
2025.03.22