📗 BOOK/혼자 공부하는 컴퓨터구조+운영체제 14

혼자 공부하는 컴퓨터 구조+운영체제 15장 정리

파일파일이란 하드 디스크나 SSD와 같은 보조기억장치에 저장된 관련 정보의 집합파일 관련 부가 정보를 속성 또는 메타데이터라고 한다.파일 유형은 운영체제가 인식하는 파일 종류를 나타낸다.파일 유형을 알리기 위해 가장 흔히 사용하는 방식을 파일 이름 뒤에 붙는 확장자를 이용하는 것이다.운영체제는 다음과 같은 파일 연산을 위한 시스템 호출을 제공한다.디렉터리파일을 일목요연하게 관리하기 위해 디렉터리를 이용한다.윈도우 운영체제에서는 디렉터리를 폴더라고 부른다.1단계 디렉터리모든 파일이 하나의 디렉터리 아래에 있는 구조트리 구조 디렉터리최상위 디렉터리가 있고 그 아래에 여러 서브 디렉터리가 있다. 최상위 디렉터리는 흔히 루트 디렉터리라고 부르고 슬래시로 표현한다.절대 경로와 상대 경로루트 디렉터리에서 자기 자신..

혼자 공부하는 컴퓨터 구조+운영체제 14장 정리

연속 메모리 할당프로세스에 연속적인 메모리 공간을 할당하는 방식스와핑메모리에서 사용되지 않은 일부 프로세스를 보조기억장치로 내보내고 실행할 프로세스를 메모리로 들여보내는 메모리 관리 기법메모리 할당최초 적합운영체제가 메모리 내의 빈 공간을 순서대로 검색하다가 적재할 수 있는 공간을 발견하면 그 공간에 프로세스르 배치하는 방식운영체제가 빈 공간 A → 빈 공간 B → 빈 공간 C 순으로 검색했다면 빈 공간 A에 적재된다.최적 적합운영체제가 빈 공간을 모두 검색해 본 후, 프로세스가 적재될 수 있는 공간 중 가장 작은 공간에 배치하는 방식최악 적합운영체제가 빈 공간을 모두 검색해 본 후, 프로세스가 적재될 수 있는 공간 중 가장 큰 공간에 배치하는 방식외부 단편화프로세스를 할당하기 어려울 만큼 작은 메모리 ..

혼자 공부하는 컴퓨터 구조+운영체제 13장 정리

교착 상태일어나지 않을 사건을 기다리며 진행이 멈춰버리는 현상자원 할당 그래프어떤 프로세스가 어떤 자원을 사용하고 있고, 어떤 프로세스가 어떤 자원을 기다리고 있는지를 표현하는 간단한 그래프이다.첫쨰, 프로세스는 원으로, 자원의 종류는 사각형으로 표현한다.둘째, 사용할 수 있는 자원의 개수는 자원 사각형 내에 점으로 표현한다.셋째, 프로세스가 어떤 자원을 할당받아 사용 중이라면 자원에서 프로세스를 향해 화살표를 표시한다.넷째, 프로세스가 어떤 자원을 기다리고 있다면 프로세스에서 자원으로 화살표를 표시한다.교착 상태 발생 조건상호 배제, 점유와 대기, 비선점, 원형 대기상호 배제한 프로세스가 사용하는 자원을 다른 프로세스가 사용할 수 없을 때, 상호 배제 상황에서 교착 상태가 발생 가능하다.점유와 대기자원..

혼자 공부하는 컴퓨터 구조+운영체제 12장 정리

프로세스 동기화동기화란동시다발적으로 실행되는 프로세스들은 서로 협력하며 영향을 주고 받음자원의 일관성을 보장해야 = 프로세스 동기화를 고려해야실행의 문맥을 갖는 모든 대상은 동기화 대상이기 때문에 스레드도 동기화 대상이다.동기화프로세스들의 수행 시기를 맞추는 것이다.실행 순서 제어프로세스를 올바른 순서대로 실행reader writer problemwriter: book.txt 파일에 값을 저장하는 프로세스reader: book.txt 파일에 저장된 값을 읽어들이는 프로세스reader 프로세스는 book.txt 안에 값이 존재한다는 특정 조건이 만족해야만 실행 가능상호 배제동시에 접근해서는 안되는 자원에 하나의 프로세스만 접근하게 함.band account problem현재 계좌에 잔액 10만원, 프로세스..

혼자 공부하는 컴퓨터 구조+운영체제 11장 정리

CPU 스케줄링운영체제가 프로세스들에게 공정하고, 합리적으로 CPU 자원을 배분하는 것을 CPU 스케줄링이라고 한다 .프로세스 우선순위프로세스마다 우선순위가 다르다.우선순위가 높은 프로세스란 빨리 처리해야 하는 프로세스들을 의미한다.입출력 작업이 많은 프로세스를 입출력 집중 프로세스라고 한다.CPU 작업이 많은 프로세스를 CPU 집중 프로세스라고 한다.입출력 프로세스는 입출력을 위한 대기 상태에 더 많이 머문다.CPU 집중 프로세스는 대기 상태보다는 실행 상태에 더 많이 머문다.CPU를 이용하는 작업을 CPU 버스트라고 하고, 입출력장치를 기다리는 작업을 입출력 버스트라고 한다.운영체제는 프로세스마다 우선순위를 부여한다. 운영체제는 각 프로세스의 PCB에 우선순위를 명시하고, PCB에 적힌 우선순위를 기..

혼자 공부하는 컴퓨터 구조+운영체제 10장 정리

사용자가 보는 앞에서 실행되는 프로세스를 포그라운드 프로세스라고 한다.사용자가 보지 못하는 뒷 편에서 실행되는 프로세스를 백그라운드 프로세스라고 한다백그라운드 프로세스를 유닉스 체계의 운영체제에서는 데몬이라고 부르고, 윈도우 운영체제에서는 서비스라고 부릅니다.프로세스 제어 블록운영체제는 빠르게 번갈아 수행되는 프로세스의 실행순서를 관리하고, 프로세스에 CPU를 비롯한 자원을 배분한다. (PCB)PCB는 커널 영역에서 실행된다. PCB로 특정 프로세스를 식별하고, 해당 프로세스를 처리하는 데 필요한 정보를 판단한다.프로세스 ID프로세스 ID (이하 PID)는 특정 프로세스를 식별하기 위해 부여하는 고유한 번호이다.같은 일을 수행하는 프로그램이라 할지라도 두 번 실행하면 PID가 다른 두 개의 프로세스가 생..

혼자 공부하는 컴퓨터 구조+운영체제 9장 정리

운영체제의 심장, 커널운영체제의 핵심 서비스를 담당하는 부분을 커널이라고 하낟.사용자 인터페이스는 커널에 포함되지 않는다.그래픽 유저 인터페이스(GUI)커맨드 라인 인터페이스(CLI)이중 모드와 시스템 호출운영체제는 사용자가 실행하는 응용 프로그램이 하드웨어 자원에 직접 접근하는 것을 방지하여 자원을 보호한다.이중 모드란 CPU가 명령어를 실행하는 모드를 크게 사용자 모드, 커널 모드로 구분하는 방식이다.사용자 모드운영체제 서비스를 제공받을 수 없는 실행 모드이다.커널 영역의 코드를 실행할 수 없는 모드이다.일반적인 응용 프로그램은 자원에 접근할 수 없다.커널 모드운영체제 서비스를 제공받을 수 있는 실행 모드이다.커널 영역의 코드를 실행할 수 있는 모드이다.시스템 콜사용자 모드로 실행되는 프로그램이 자원..

혼자 공부하는 컴퓨터 구조+운영체제 8장 정리

장치 컨트롤러입출력장치는 장치 컨트롤러를 통해 컴퓨터 내부와 정보를 주고 받는다.장치 컨트롤러는 대표적으로 다음과 같은 활동을 한다.CPU와 입출력장치 간의 통신 중개오류 검출데이터 버퍼링데이터 버퍼링버퍼링이란 전송률이 높은 장치와 낮은 장치 사이에 주고 받는 데이터를 버퍼라는 임시 저장 공간에 저장하여 전송률을 비슷하게 맞추는 방식이다.장치 컨트롤러 내부에는 데이터 레지스터와 상태 레지스터, 제어 레지스터가 있다.데이터 레지스터는 CPU와 입출력장치 사이에 주고 받을 데이터가 담기는 레지스터이다.상태 레지스터는 입출력장치가 입출력 작업을 할 준비가 되었는지, 입출력 작업이 완료되었는지, 입출력장치에 오류가 없는지 등의 상태 정보가 저장된다.제어 레지스터는 입출력장치가 수행할 내용에 대한 제어 정보와 명..

혼자 공부하는 컴퓨터 구조+운영체제 7장 정리

다양한 보조 기억 장치하드 디스크하드 디스크는 자기적인 방식으로 데이터를 저장하는 보조기억장치이다.하드 디스크를 자기 디스크의 일종으로 지칭하기도 한다.하드 디스크에서 실질적으로 데이터가 저장되는 곳은 플래터라고 한다.플래터를 회전시키는 구성 요소를 스핀들이라고 한다.스핀들이 플래터를 돌리는 속도는 분당 회전수를 나타내는 RPM이라는 단위로 표현된다.플래터를 대상으로 데이터를 읽고 쓰는 구성 요소는 헤드이다.헤드는 원하는 위치로 헤드를 이동시키는 디스크 암에 부착되어 있다.플래터는 트랙과 섹터라는 단위로 데이터를 저장한다.탐색 시간은 접근하려는 데이터가 저장된 트랙까지 헤드를 이동시키는 시간을 의미한다.회전 지연은 헤드가 있는곳으로 플래터를 회전시키는 시간을 의미한다.전송 시간은 하드 디스크와 컴퓨터 간..

혼자 공부하는 컴퓨터 구조+운영체제 6장 정리

RAM의 특징과 종류RAM에는 실행할 프로그램의 명령어와 데이터가 저장 된다.RAM은 전원을 끄면 저장된 내용이 날아가는 휘발성 저장장치보조 기억 장치는 전원을 꺼도 내용이 남아있는 비 휘발성 저장장치CPU는 휘발성 저장장치에 접근하여 프로그램을 실행한다. → 일반적으로 휘발성 저장장치는 실행할 대상을 저장하고, 비 휘발성 저장장치는 보관할 대상을 저장한다.RAM의 용량과 컴퓨터 성능 영향RAM 용량이 크면 많은 프로그램을 동시에 빠르게 실행되기 때문에 유리 하다. → 보조 기억 장치까지 가는 시간을 줄여준다.RAM 용량은 어느정도만 커도 된다. 커도 처리 속도가 따라가지 못하면, 속도는 같기 때문이다.처리 속도에 따라 RAM 용량을 적절하게 크게 하는 것이 중요하다.RAM의 종류DRAM (Dynamic..