컴퓨터 구조와 운영체제

컴퓨터 구조와 운영체제/운영체제

[운영체제] 커널(kernel)

커널은 운영체제에서 핵심 기능을 담당하는 한 부분이다. 핵심 기능 자원에 접근, 조작하는 기능 프로그램이 올바르게 그리고 안전하게 실행되게 하는 기능 보통의 운영체제라 함은 커널을 일컫는 경우가 많다. 운영체제에는 속하지만 커널에는 속하지 않는 기능? UI(User Interface) → 사용자와 컴퓨터 간의 연결 통로일 뿐 운영체제는 응용 프로그램들이 하드웨어 자원에 접근할 때, 자신을 통해서만 접근할 수 있도록 함으로써 자원을 보호한다. 운영체제는 이렇게 문지기 역할을 하는데 이중 모드로 이를 구현한다. 이중 모드(Dual Mode) CPU가 명령어를 실행하는 모드를 사용자 모드와 커널 모드로 구분하는 방식 사용자 모드(User Mode) 운영체제 서비스를 제공받을 수 없는 모드로 커널 영역의 코드를..

컴퓨터 구조와 운영체제/운영체제

[운영체제] 운영체제(Operating System)란

1. 운영체제란 실행할 프로그램에 필요한 자원을 할당하고 프로그램이 올바르게 실행되도록 하는 프로그램 → 운영체제는 컴퓨터의 메모리 내의 커널 영역에 적재되어 실행된다. 1) 운영체제의 역할 메모리 자원의 관리 : 메모리 주소가 겹치지 않게 응용 프로그램들을 적당한 공간에 적재하고 더 이상 실행되지 않는 프로그램은 메모리에서 삭제하여 메모리 자원을 관리한다. CPU 관리 : 특정 프로그램이 CPU를 독점하여 사용하면 다른 프로그램들이 동작할 수 없기 때문에 CPU를 최대한 공정하게 여러 프로그램에게 할당한다. 어떤 프로그램이 좀 더 나중에 실행되도 되는지, 어떤 프로그램이 CPU를 좀 더 점유하고 있어도 되는지 등을 파악하여 결정한다. 입출력장치의 관리 ➡️ 응용 프로그램에 자원을 효율적으로 배분하고 실..

컴퓨터 구조와 운영체제/컴퓨터 구조

[컴퓨터 구조] 입출력 장치 - 입출력 방법

CPU와 장치 컨트롤러가 정보를 주고 받는 방법은 크게 3가지가 있다. 1. 프로그램 입출력 프로그램 속 명령어를 통해 입출력 장치를 제어하는 방법 CPU가 장치 컨트롤러의 레지스터 값을 읽고 쓰면서 입출력이 이루어진다. 프로그램을 실행하다 입출력 명령어를 만나면 CPU는 입출력 장치와 연결된 장치 컨트롤러와 상호작용하여 입출력 작업을 수행한다. 메모리 정보를 하드 디스크에 저장(백업)하기 1) CPU가 하드 디스크 장치 컨트롤러(의 제어 레지스터)에 쓰기 명령을 보낸다. 2) 장치 컨트롤러는 하드 디스크의 상태를 확인하여 상태 레지스터에 준비된 상태임을 표시한다. 3) CPU가 주기적으로 상태 레지스터를 확인하다가 장치가 준비된 상태가 되면, 저장할 데이터를 데이터 레지스터에 쓴다. 입출력 장치의 종류..

컴퓨터 구조와 운영체제/컴퓨터 구조

[컴퓨터 구조] 입출력 장치 - 장치 컨트롤러, 장치 드라이버

입출력 장치 컴퓨터와 연결되어 컴퓨터 외부에서 내부와 데이터를 주고 받을 수 있는 장치 모니터, 스피커, 키보드, 마우스, 헤드셋, 프린터 등 입출력장치의 종류는 다양하고 장치마다 속도, 데이터 전송 형식 또한 다르다. 이렇게 다양한 입출력장치들과 정보를 주고 받는 형식을 규격화 하기가 어렵다. 일반적으로 CPU와 메모리의 데이터 전송률은 높지만 입출력장치의 데이터 전송률은 낮다. * 전송률 : 데이터를 얼마나 빨리 교환할 수 있는지를 나타내는 지표 1. 장치 컨트롤러 위와 같은 이유들로 인해 입출력장치는 장치 컨트롤러를 통해 컴퓨터 내부와 연결되어 정보를 주고 받는다. 우리는 이를 입출력 제어기(I/O controller, I/O module)이라고도 한다. 1) 장치 컨트롤러의 역할 CPU와 입출력장..

컴퓨터 구조와 운영체제/컴퓨터 구조

[컴퓨터 구조] 보조기억장치 - RAID

1. RAID(Redundant Array of Independent Disks)란 하드 디스크, SSD 같은 저장장치를 효율적으로 사용할 수 있는 방법 데이터의 안정성 또는 성능을 위해 여러 개의 물리 보조기억장치들을 하나의 논리 보조기억장치처럼 사용하는 기술 2. RAID의 레벨 RAID를 구성하는 기술 RAID 0, RAID 1, RAID 2, RAID 3, RAID 4, RAID 5, RAID 6, RAID 10, RAID 50 등이 있다. 1) RAID 0 데이터를 단순히 나누어서 저장하는 방식 하드 디스크를 번갈아 가면서 데이터를 저장한다. 저장되는 데이터가 하드 디스크의 개수만큼 나뉘어서 저장된다. 스트라이프(stripe) : 줄무늬처럼 분산되어 저장된 데이터를 뜻한다. 스프라이핑(strip..

컴퓨터 구조와 운영체제/컴퓨터 구조

[컴퓨터 구조] 보조기억장치

보조기억장치 대표적인 보조기억장치에는 하드 디스트와 플래시 메모리가 있다. - 하드 디스크 : HDD, CD, 플로피 디스크 - 플래시 메모리 : SSD, USB, SD카드 1. 하드 디스크 자기적인 방식으로 데이터를 저장하는 보조기억장치 참고 : https://whitesnake1004.tistory.com/273 1) 하드 디스크의 구성 요소 a) 플래터 N극과 S극으로 덮여있는 원판, 데이터가 저장되는 곳이며 일반적으로 양면을 모두 사용한다. b) 스핀들 플래터를 회전시켜준다. c) 헤드 스핀들이 플래터를 회전 시킬 때, 플래터에 코팅된 자성체를 소거를 하여 플래터에 있는 데이터를 읽고 쓰는 역할 플래터는 양면을 사용하기 때문에 헤드는 플래터의 2배가 필요하다. 연속된 정보는 한 실린더에 기록된다...

컴퓨터 구조와 운영체제/컴퓨터 구조

[컴퓨터 구조] 메모리와 캐시 메모리

1. 메모리 주기억장치(Main Memory)는 크게 RAM과 ROM으로 나눌 수 있고 우리가 주로 메모리라고 하는 것은 RAM을 뜻한다. RAM을 중점적으로 알아보자. 1) RAM이라는 하드웨어는 무엇인가? RAM(Ramdom Access Memory) : 사용자가 자유롭게 내용을 읽고 쓰고 지울 수 있는 기억장치를 뜻하며, CPU가 연산을 하기 위해서 필요한 내용들이 저장된다. 그러면 ROM은 무엇인가? ROM(Read Only Memory) : 한 번 기록된 정보를 읽을 수만 있고 수정할 수 없는 기억장치를 뜻한다. 한번 기록한 정보는 전원 유무와 상관없이 기억되지만, 삭제나 수정이 불가능하다. 컴퓨터의 바이오스나 UEFI 같은 펌웨어를 저장하는 내장형 롬이나 게임기에 들어가는 게임 패키지를 담거나..

컴퓨터 구조와 운영체제/컴퓨터 구조

[컴퓨터 구조] CPU

1. CPU란 CPU(central processing unit) : 중앙 처리 장치 메모리에 저장된 명령어를 읽어 해석하고 실행하는 장치 2. CPU의 구성요소 ALU(Arithmetic Logic Unit) : 계산(연산)을 수행하는 장치 제어장치 : 제어 신호를 발생시키고, 명령어를 해석하는 장치 레지스터 : 임시 저장 장치 3. CPU의 작동 원리 1) ALU ALU의 Input 레지스터로부터 피연산자를 받는다. 제어장치로부터 수행할 연산을 알려주는 제어 신호를 받는다. ➡️ 받은 피연산자와 제어 신호를 가지고 산술, 논리 연산 등 다양한 연산 작업을 수행한다. ALU의 Output 연산을 수행한 결과(문자, 숫자, 혹은 메모리 주소)를 레지스터에 임시로 저장한다. 플래그 레지스터에 플래그를 보낸..

github.com/hyunbenny/study
'컴퓨터 구조와 운영체제' 카테고리의 글 목록