728x90
반응형
SMALL

2024/11 25

[운영체제] CPU 스케줄링에 대하여...더보기

CPU 스케줄링CPU 스케줄링이란 운영체제가 프로세스들에게 공정하고 합리적으로 CPU 자원을 배분하는 것이다. 1. CPU 스케줄링이 필요한 이유 모든 프로세스는 CPU를 필요로 하고 모든 프로세스는 먼저 CPU를 사용하고 싶어 한다.프로세스 종류마다 입출력장치를 이용하는 시간과 CPU를 이용하는 시간의 양에는 차이가 있다. 1.1 시간에 따른 분류입출력 집중 프로세스: 비디오 재생이나 디스크 백업 작업을 담당하는 프로세스와 같이 입출력 작업이 많은 프로세스CPU 집중 프로세스: 복잡한 수학 연산, 컴파일, 그래픽 처리 작업을 담당하는 프로세스와 같이 CPU 작업이 많은 프로세스 1.2 우선순위프로세스의 중요도에 맞게 프로세스가 CPU를 이용할 수 있도록 하기 위해 운영체제는 프로세스마다 우선순위를 부여..

CS/운영체제 2024.11.30

[운영체제] 교착 상태 발생 조건과 해결 방법

교착 상태란?프로세스를 실행하기 위해서는 자원이 필요한데, 두 개 이상의 프로세스가 각자 상대방이 가지고 있는 자원을 무작정 기다린다면 그 어떤 프로세스도 더 이상 진행할 수 없는 교착 상태가 된다.교착 상태는 일어나지 않을 사건을 기다리며 진행이 멈춰 버리는 현상를 말한다. 1.  발생 조건아래 조건 중 하나라도 만족하지 않는다면 교착 상태가 발생하지 않지만, 아래 조건이 모두 만족될 때 교착 상태가 발생할 가능성이 생긴다.상호 배제: 한 프로세스가 사용하는 자원을 다른 프로세스가 사용할 수 없는 상황점유와 대기: 어떠한 자원을 할당받은 상태에서 다른 자원을 할당받기를 기다리는 상태비선점: 어떤 프로세스도 다른 프로세스의 자원을 강제로 빼앗지 않고 그 자원을 이용하는 프로세스의 작업이 끝나야만 이용하는..

CS/운영체제 2024.11.29

[운영체제] 프로세스 한 페이지로 정복하기

프로세스프로그램은 실행되기 전까지는 그저 보조기억장치에 있는 데이터 덩어리일 뿐이지만, 보조 기억 장치에 저장된 프로그램을 메모리에 적재하고 실행하는 순간 그 프로그램은 프로세스가 된다. 1. 프로세스의 위치하나의 프로세스는 메모리의 사용자 영역에 크게 코드 영역, 데이터 영역, 힙 영역, 스택 영역으로 나뉘어 저장된다. 1.1 코드 영역 (텍스트 영역): CPU가 실행할 코드, 즉 기계어로 이루어진 명령어가 저장되는 공간읽기 전용 공간크기가 고정된 영역(정적 할당 영역) 1.2 데이터 영역: 프로그램이 실행되는 동안 유지할 데이터(전역 변수 등)가 저장되는 공간크기가 고정된 영역(정적 할당 영역) 1.3 힙 영역: 프로그래머가 직접 할당할 수 있는 저장 공간프로그래밍 과정에서 힙 영역에 메모리 공간을 ..

CS/운영체제 2024.11.28

[운영체제] 운영체제란 무엇일까?

흔히 사용하는 데스크톱 컴퓨터나 노트북, 스마트폰에는 모두 운영체제가 설치되어 있다.대표적인 데스크톱 운영체제로는 윈도우와 macOS, 리눅스가 있고, 스마트폰 운영체제로는 안드로이드와 iOS가 있으며 컴퓨터 부품들은 운영체제라는 특별한 프로그램의 지휘하에 작동한다. 운영체제운영체제는 실행할 프로그램에 필요한 자원을 할당하고, 프로그램이 올바르게 실행되도록 돕는 특별한 프로그램이다. 1. 운영체제의 위치운영체제는 인터넷 브라우저, 게임과 같은 프로그램이기 때문에 운영체제 또한 여느 프로그램과 마찬가지로 메모리에 적재되어야 한다.다만 운영체제는 매우 특별한 프로그램이기 때문에 항상 컴퓨터가 부팅될 때 메모리 내 커널 영역이라는 공간에 따로 적재되어 실행된다.메모리커널 영역: 메모리 내 운영체제가 적재되는 ..

CS/운영체제 2024.11.27

[컴퓨터구조] CPU와 장치 컨트롤러가 정보를 주고 받는 방법

1. 프로그램 입출력: 프로그램 속 명령어로 입출력장치를 제어하는 방법CPU가 프로그램 속 명령어를 실행하는 과정에서 입출력 명령어를 만나면 CPU는 입출력장치에 연결된 장치 컨트롤러와 상호작용하며 입출력 작업을 수행한다.CPU가 장치 컨트롤러의 레지스터 값을 읽고 씀으로써 이루어진다. 1.1 CPU가 여러 장치 컨트롤러 속 레지스터들의 위치를 아는 방법메모리 맵 입출력: 메모리에 접근하기 위한 주소 공간과 입출력장치에 접근하기 위 한 주소 공간을 하나의 주소 공간으로 간주하는 방법CPU는 메모리의 주소들이나 장치 컨트롤러의 레지스터들이나 모두 똑같이 메모리 주소를 대하면 된다.1024개의 주소를 표현할 수 있는 컴퓨터가 있을 때 1024개 전부 메모리 주소를 표현하는 데 사용하지 않고 512개는 메모리..

CS/컴퓨터구조 2024.11.26

[컴퓨터구조] 입출력장치의 모든 것

입출력 장치입출력장치는 마이크, 스피커, 프린터, 마우스, 키보드처럼 컴퓨터 외부에 연결되어 컴퓨터 내부와 정보를 교환하는 장치를 의미한다.  1. 특징1.1 입출력장치에는 종류가 너무나도 많다.장치마다 속도, 데이터 전송 형식 등도 다양해 입출력장치와 정보를 주고받는 방식을 규격화하기가 어렵다. 1.2 CPU와 메모리의 데이터 전송률(데이터를 얼마나 빨리 교환할 수 있는지를 나타내는 지표)은 높지만 입출력장치의 데이터 전송률은 낮다.CPU와 메모리처럼 전송률이 높은 장치는 1초에도 수많은 데이터를 주고받을 수 있지만, 키보드나 마우스와 같이 상대적으로 전송률이 낮은 장치는 같은 시간 동안 데이터를 조금씩만 주고받을 수 있다.  2. 장치 컨트롤러 (입출력 제어기, 입출력 모듈)모든 입출력장치는 각자의 ..

CS/컴퓨터구조 2024.11.25

[컴퓨터구조] RAID 끝내기

RAID어마어마한 정보량을 보조 기억 장치에 저장하고 관리하는 방법을 말한다.데이터의 안전성 혹은 높은 성능을 위해 여러 개의 물리적 보조 기억 장치를 마치 하나의 논리적 보조 기억 장치처럼 사용하는 기술이다.즉, 여러 개의 하드 디스크나 SSD를 마치 하나의 장치처럼 사용하는 기술을 말한다. 1. RAID 0: 여러 개의 보조 기억 장치에 데이터를 하나씩 나누어 저장하는 구성 방식저장되는 데이터가 하드디스크 개수만큼 나뉘어 저장한다.스트라입: 줄무늬처럼 분산되어 저장된 데이터스트라이핑: 분산하여 저장하는 것장점: 저장된 데이터를 읽고 쓰는 속도가 빠름단점: 하드 디스크 중 하나에 문제가 생긴다면 다른 모든 하드 디스크의 정보를 읽는 데 문제가 생길 수 있어 정보가 안전하지 않음 2. RAID 1: 복사..

CS/컴퓨터구조 2024.11.24

[컴퓨터구조] 캐시 메모리 파헤치기

캐시 메모리CPU와 메모리 사이에 위치하고, 레지스터보다 용량이 크고 메모리보다 빠른 SRAM 기반의 저장 장치를 말한다.주기억장치보다 용량이 훨씬 작지만 훨씬 빠르다. 1. 탄생 배경CPU가 매번 메모리에 왔다 갔다 하는 건 시간이 오래 걸리니, 메모리에서 CPU가 사용할 일부 데이터를 미리 캐시 메모리로 가지고 와서 활용하기 위해 만들어졌다. 1.1 주요 용도CPU 성능 최적화: CPU가 자주 사용하는 데이터를 캐시에 저장하여 접근 속도를 높임.메모리 병목 현상 감소: RAM과 CPU 간 속도 차이로 인해 발생하는 병목을 줄임.전력 소비 절감: CPU가 느린 RAM에 반복적으로 접근하지 않도록 하여 전력 소모를 줄임.  2. 종류컴퓨터 내부에는 여러 개의 캐시 메모리가 있으며 CPU와 가까운 순서대로..

CS/컴퓨터구조 2024.11.23

[컴퓨터구조] 주기억장치에 대해 알아보자

주기억장치프로그램이 실행되려면 반드시 메모리에 저장되어 있어야 한다.메모리는 현재 실행되는 프로그램의 명령어와 데이터를 저장하는 부품이다. 컴퓨터가 빠르게 작동하기 위해서는 메모리 속 명령어와 데이터의 위치는 정돈되어 있어야 하며 메모리에 저장된 값의 위치는 주소로 알 수 있다.실행 중인 프로그램들은 메모리에 저장되는데 메모리는 전원이 꺼지면 저장된 내용이 날아간다.  1. 종류1.1 RAM전원을 끄면 RAM에 저장된 명령어와 데이터가 모두 날아가기 때문에 RAM에는 실행할 프로그램의 명령어와 데이터가 저장된다.CPU가 실행하고 싶은 프로그램이 보조기억장치에 있다면 이를 RAM으로 복사하여 저장한 후 실행한다.RAM 용량이 크면 보조기억장치에서 많은 프로그램들을 동시에 빠르게 실행하는 데 유리할 뿐 비례..

CS/컴퓨터구조 2024.11.22

[컴퓨터구조] 보조기억장치의 정의와 종류 (하드 디스크, 플래시 메모리)

보조기억장치전원이 꺼져도 저장된 내용을 잃지 않는(비휘발성) 메모리를 보조할 저장장치를 말한다.메모리보다 크기가 크고 저장 용량 대비 비용이 저렴하여 대규모 데이터 저장에 적합하다.주기억장치에 비해 읽기/쓰기 속도가 느리며 CPU가 직접 접근하지 않고, 입출력 장치(I/O)를 통해 데이터를 교환한다.보조기억장치에는 수명이 있다.  1. 하드 디스크 (HDD, 자기 디스크)자기적인 방식으로 데이터를 저장하는 보조기억장치를 말한다.여러 겹의 플래터로 이루어져 있으며 플래터 양면을 모두 사용 가능하다. 1.1 구성플래터: 실질적으로 데이터가 저장되는 곳, 동그란 원판 모양 부품자기 물질로 덮여있어 수많은 N극과 S극을 저장 (N극과 S극은 0과 1의 역할을 수행)트랙과 섹터라는 단위로 데이터를 저장트랙: 플래..

CS/컴퓨터구조 2024.11.21
728x90
반응형
LIST