Notice
Recent Posts
Recent Comments
Link
250x250
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 프론트엔드
- 자바스크립트기본
- node.js
- JS
- JavaScript
- 프로토콜
- js학습
- 개발공부
- react
- nodejs
- 리액트
- 자바스크립트학습
- js ajax
- 자바스크립트 학습
- vue.js학습
- node.js 학습
- Vue.js
- 개발자지식
- 프론트엔드 공부
- 프론트엔드공부
- node.js프로젝트
- 프론트엔드학습
- 개발자학습
- MongoDB
- 정보처리산업기사
- 네트워크
- node.js학습
- 자바스크립트
- API
- 개발자공부
Archives
- Today
- Total
dada's
컴퓨터 시스템의 구조와 운영체제 본문
728x90
컴퓨터 시스템의 구조
내부장치 ⇒ CPU, 메모리
외부장치 ⇒ 디스크, 키보드, 마우스, 모니터, 네트워크
외부장치에서 내부장치로 데이터를 읽어와 각종 연산을 수행, 그 결과를 외부장치로 다시 내보내는 방식으로 업무를 처리한다
메모리 및 입출력장치 등의 각 하드웨어 장치에는 컨트롤러라는 것이 붙어 있다. 컨트롤러는 일종의 작은 CPU로서 컴퓨터 전체에 CPU가 있듯 컨트롤러는 각 하드웨어 장치마다 존재하면서 이를 제어한다
운영체제
운영체제(operating system)란 컴퓨터 하드웨어 바로 윗단에 설치되는 소프트웨어이다.
사용자 및 다른 모든 소프트웨어와 하드웨어를 연결하는 소프트웨어 계층이다.
컴퓨터 시스템을 운영하는 기본적인 소프트웨어를 운영체제라고 한다.
운영체제도 하나의 소프트웨어로써 컴퓨터 시스템에서 실행되기 위해서 메모리에 올라가게 된다. 그러나 운영체제처럼 규모가 큰 프로그램이 모두 메모리에 올라갈 수 없어 운영체제 중 항상 필요한 부분만 전원이 켜짐과 동시에 메모리에 올려놓고(커널) 그렇지 않은 부분은 필요할 때 메모리에 올려서 사용한다.
💡 커널
- 운영체제 중 항상 메모리에 올라가 있는 운영체제의 핵심 부분으로 하드웨어와 응용 프로그램 사이에서 인터페이스를 제공하는 역할을 하며 컴퓨터 자원을 관리하는 역할을 한다
- 커널은 항상 컴퓨터 자원을 바라보고 있기 때문에 사용자와의 상호작용은 지원하지 않는다. 따라서 사용자와의 직접적인 상호작용을 위해 프로그램을 제공하는데 대표적으로 쉘(shell)이라는 명령어 해석기등이 있다
- 커널의 가장 큰 목표는 컴퓨터의 물리적(하드웨어) 자원과 추상화 자원을 관리하는 것이다. 추상화란 물리적으로 하나뿐인 하드웨어를 여러 사용자들이 번갈아 사용할 수 있도록 마치 여러개처럼 보이게 하는 기술이다.
- 커널이 수행하는 작업들 핵심
- Task(Process) Management : 물리적 자원인 CPU를 추상적 자원인 Task로 제공 (CPU 관리 방법 참고)
- Memory Management : 물리적 자원인 메모리를 추상적 자원인 Page 또는 Segement로 제공 ⇒ 가상메모리 구현 방법
- File System : 물리적 자원인 디스크를 추상적 자원인 File로 제공
- Network Management : 물리적 자원인 네트워크 장치를 추상적 자원인 Socket으로 제공
- Device Driver Management : 각종 외부 장치에 대한 접근
- Interrupt Handling : 인터럽트 핸들러
- I/O (input output) Communication : 입출력 통신 관리
운영체제의 기능
운영체제의 역할은 하드웨어를 위한 역할과 사용자를 위한 역할 두 가지로 나뉜다.
- 컴퓨터 시스템 내의 자원(resource)를 효율적으로 관리하는 것
- 운영체제의 핵심 기능은 자원을 효율적으로 관리하는 것이며, 따라서 운영체제를 자원관리자라고 부름
- 자원이란 CPU, 메모리, 하드디스크 등 하드웨어 자원 뿐 아니라 소프트웨어 자원까지 통칭해서 부르는 말
- 운영체제는 사용자 및 프로그램들 간에 자원이 형평성 있게 분배되도록 하는 균형자 역할도 함께 수행하며 효율성을 지키도록 동작
- 컴퓨터 시스템을 편리하게 사용할 수 있는 환경을 제공하는 것
- 편리한 환경제공이란 운영체제가 여러 사용자 및 프로그램들에게 각각 독립적으로 컴퓨터를 사용하는 것과 같은 ‘환상’을 제공하는것
- 하드웨어를 직접 다루는 복잡한 부분은 운영체제가 대신 해주고, 각 사용자 및 프로그램은 그에 대한 자세한 내용을 몰라도 프로그램을 실행할 수 있도록 해주는 기능을 제공 예) 파일 저장, 파일 읽기 등
그 외에도 사용자와 운영체제 자신을 보호하는 역할을 수행(보안 및 보호 기능)
728x90
'CS' 카테고리의 다른 글
CPU 연산과 관리 방법 (로컬버퍼, 인터럽트, 스풀, 프로그램, 프로세스) (0) | 2023.06.08 |
---|---|
컴퓨터의 구조 (0) | 2023.04.03 |
Comments