Helicobacdo Project
로그인
Helicobacdo Project
로그인
02. 운영체제의 개념과 구조
헬리코박도
·
2021년 10월 15일
팔로우
0
운영체제
0
운영체제
목록 보기
3/10
공룡책 ch01, 02
운영체제란?
컴퓨터의 하드웨어를 관리하는 소프트웨어
응용프로그램과 사용자와 하드웨어 간의 매개 역할
컴퓨터 시스템의 4가지 구성 요소
하드웨어
운영체제
응용 프로그램
사용자
부트스트랩 프로그램 bootstrap program
컴퓨터 구동 시 가장 먼저 실행되는 프로그램
운영체제를 메모리에 불러오는 역할을 함
인터럽트 Interrupts
하드웨어 장치가 CPU에 시스템 버스를 통해 신호를 보내 인터럽트를 트리거함
CPU는 한 번에 하나의 일 밖에 못하기 때문에 인터럽트가 작동하면 CPU가 하던 일을 중지하여 저장하고 인터럽트를 처리한다.
폰 노이만 아키텍처
명령어를 메모리에서 fetch하여 해석하고 처리하는 사이클
명령어는 instruction register에 저장됨
명령어를 해석할 때 피연산자를 불러오는데 피연산자는 internal register에 저장됨
명령어 처리결과는 다시 메모리에 저장됨
Storage System
계층형 구조로 이루어짐
아래층으로 갈 수록 속도가 느려지고 저장 공간이 커짐
입출력 구조 I/O Structure
왼쪽의 device가 cpu에 인터럽트를 주고 데이터를 주고 받는 형태는 소량의 데이터에는 적합하지만 대용량에는 오버헤드가 발생하여 적합하지 않음
DMA Direct Memory Access
: 오른쪽의 구조로 디바이스가 메모리에 직접 접근하여 데이터를 받아옴
OS 개발의 가장 큰 중점은 I/O 구조 설계이다.
SMP Symmetric MultiProcessing
가장 흔한 멀티프로세서 시스템
메모리에 연결된 여러 개의 CPU가 존재하며 각 CPU에 레지스터와 캐시가 존재함.
멀티코어 디자인 Multi-core design
하나의 프로세서 내에 여러 개의 코어가 존재하는 구조
멀티프로그래밍 Multiprogramming
여러 개의 프로그램을 동시에 메모리에 올리고 실행
CPU 사용 효율을 높힐 수 있음
멀티태스킹(멀티프로세싱) Multitasking
멀티프로그래밍을 논리적으로 확장한 것
하나의 CPU를 시분할하여 사용, 하나의 CPU로 여러 개의 작업을 동시에 하기 가능함(Concurrency)
CPU Scheduling
: 멀티태스킹을 할 때 CPU가 어느 작업을 어떤 순서로 할지 스케쥴링하는 것
운영체제의 두 가지 모드
User mode
: 보안을 위해 사용자에게 허가된 모드, 직접적인 하드웨어 제어 불가
Kernel mode
: 유저 모드에서 시스템 콜을 받으면 커널 모드로 넘어감. 직접적인 하드웨어 제어가 가능함
가상화 Virtualization
남는 자원을 통해 가상의 컴퓨터 환경 구현
동시에 여러 개의 OS 동작
VMM Virtual Machin Manager
: 가상 OS들을 관리
시스템 콜 System Call
응용 프로그램이 OS에 서비스를 요청할 수 있게 제공되는 인터페이스
OS API
헬리코박도
Data Engineer
팔로우
이전 포스트
01. 운영체제가 뭐길래?
다음 포스트
03. 프로세스의 이해
0개의 댓글
댓글 작성
관련 채용 정보