운영체제 4

[혼공학습단 12기] 12강 - 프로세스 동기화

[ 동기화 ]프로세스들 사이의 수행 시기를 맞추는 것 시기 1. 실행 순서 제어: 프로세스를 올바른 순서대로 실행EX) 워드 프로세스에서 쓰는 과정이 수행되어야 읽는 과정이 수행되는 것 시기 2. 상호 배제: 동시에 접근해서는 안 되는 자원에 하나의 프로세스만 접근 (동시 사용을 피하기 위해 사용)EX) 생산자, 소비자 문제 공유자원 EX) 전역 변수, 파일, 입출력장치, 보조기억장치 ... 등등 임계 구역공유자원 중에서 두 개 이상의 프로세스를 동시에 실행하면 문제가 발생하는 자원에 접근하는 코드 영역레이스 컨디션잘못된 실행으로 인해 여러 프로세스가 동시에 임계 구역 코드를 실행해 발생하는 문제데이터 일관성이 깨지는 문제 발생 상호배제를 위한 동기화(1) 상호배제프로세스가 임계 구역에 진입했다면 다른 ..

[혼공학습단 12기] 11강 - CPU 스케줄링

[ CPU 스케줄링 ]운영체제가 프로세스들에게 공정하고 합리적으로 CPU 자원을 배분하는 것 ⇒ 컴퓨터 성능에 중요한 영향을 미침.  프로세스가 사용하고 싶다고 말한 순위를 생각해 배정한다.굉장히 비효율적인 것이다.운영체제는 각 프로세스의 pcb에 우선순위를 명시하고, pcb에 적힌 우선순위를 기준으로 먼저 처리할 프로세스를 결정 [ I/O burst ]- 비디오 재생, 디스크 백업은 입출력 작업이 많은 프로세스로, 입출력 집중 프로세스라 할 수 있다.- 실행상태보다는 입출력을 위한 대기 상태에 더 머무르는 경향을 띤다. [ CPU burst ]- 수학 연산, 컴파일, 그래픽 처리 작업을 담당하는 프로세스로, CPU 집중 프로세스라 할 수 있다.- 대기 상태보다는 실행 상태에 더 머무르는 경향을 띤다. ..

[혼공학습단 12기] 10장, 프로세스와 스레드

[ 프로세스 ]정의 : 실행 중인 프로그램 사용자가 볼 수 있는 공간에서 실행되는 프로세스 (=포그라운드 프로세스) , 사용자가 보지 못하는 뒤편에서 실행되는 프로세스 (=백그라운드 프로세스)로 나누어진다.백그라운드 프로세스는 다시 사용자와 상호작용하느냐 안 하냐에 따라 갈라지며, 사용자와 상호작용하지 않는 프로세스를 데몬 및 서비스라 부른다.  [ 프로세스 제어 블록(PCB) ]프로세스와 관련된 정보를 저장하는 자료구조 ( = 상품에 달린 태그 ) - 운영체제는 번갈아 수행되는 프로세스의 실행 순서를 관리하고, 프로세스에 CPU를 비롯한 자원을 배분하면서 PCB를 이용한다.- 커널 영역에 생성된다.- 프로세스 생성 시에 만들어지고 실행이 끝나면 폐기된다. 담기는 정보1. 프로세스 ID(PID)특정 프로..

[혼공학습단 12기] 1장 ~ 3장, 데이터와 명령어

[ 1장 ]컴퓨터는 0과 1로 표현된 데이터만을 이해한다.이처럼 0과 1로  표현되는 정보에는 데이터와 명령어가 있다. ( ex )cat.jpg -> 데이터usb에 cat.jpg를 저장하라 -> 명령어 컴퓨터의 핵심 장치는,(1)중앙처리장치(CPU) / (2)주기억장치(메모리) / (3)보조기억장치 / (4)입출력장치(+)주기억장치는 RAM / ROM 이 있다. 메모리라 함은 보통 RAM을 말한다. (1) 중앙처리장치(CPU)명령어 받고, 받은 명령어 해석하고 실행까지 하는 컴퓨터의 두뇌핵심 내부 구성 : (1)산술논리연산장치(ALU), (2)레지스터, (3)제어장치(1)산술논리연산장치(ALU)계산하는 부품(2)레지스터CPU 내부 작은 임시 저장 장치실행하는 데 필요한 값들을 임시로 저장CPU 안에는 다..