티스토리 뷰
1. 운영체제 (Operating System)
일반 컴퓨터나 노트북 전원을 키면 가장 먼저 만나게 되는 소프트웨어
필요성
1) 컴퓨터는 운영체제 없이 작동할까? 가능함.
2) 운영체제 있는 기계와 없는 기계의 차이는?
* OS 없는 기계
만들 당시 구현한 기능만을 수행
*OS 있는 기계
컴퓨터 시스템을 사용하기 쉽게하고, 효율적으로 사용할 수 있도록 함.
정의
커널 + 시스템 프로그램
커널 : 컴퓨터에서 항상 실행되는 하나의 프로그램
시스템 프로그램 : 모든 프로그램을 포함한, 시스템 운영과 관련있는 운영 프로그램.
운영체제는 리소스 할당의 주체.
- 모든 리소스를 관리하고
- 자원에 대한 충돌되는 요청 사이에서 리소스를 효율적으로 분배함.
운영체제는 제어 프로그램임.
- 프로그램을 제어하고 오류 및 부적절한 사용을 방지함.
컴퓨터 시스템 운영함.
- 하나 이상의 cpu, 장치 컨트롤러는 공유된 메모리에 대한 접근으 제공하는 공용버스를 통해 연결.
- 메모리를 두고 경쟁하는 cpu와 디바이스 동시 실행.
2. 컴퓨터 시스템의 작동.
부트스트랩 (Bootstrap, 부팅)
- pc의 전원을 누른 직후부터, 운영체제가 메모리에서 동작하기까지의 모든 과정.
1) 메인 보드에 전력 공급
2) CPU가 ROM or EEPROM에 저장된 BIOS 루틴이 시작.
3) BIOS는 셀프테스트를 통해 주변 하드웨어를 체크
4) MBR(Master Boot Record)에 존재하는 부팅 정보를 읽어오는 부트스트랩 실행.
5) RAM에 Bootloader를 적재. 디스크에 있는 OS(커널)코드를 복사하여 메모리에 적재. 초기화.
메모리 : ROM, RAM(부트 로더, OS 커널 코드 => 실제 OS 역할을 함)
디스크 : MBR, Partition1 ~ N번까지.
3. 인터럽트 (Interrupt)
cpu가 프로그램을 구동 중일때, 입출력이나 예외사항을 발견하여 처리가 필요한 경우에 cpu에게 신호를 보내는 것.
=> 처리할게 있을 경우, 이것 좀 처리해줘! 느낌~!
하드웨어 인터럽트
- 하드웨어가 발생시키는 인터럽트.
- cpu외의 하드웨어가 cpu에게 신호를 보내야할 경우 발생.
소프트웨어 인터럽트
- 소프트웨어가 발생시키는 인터럽트
- 사용자 프로그램이 인터럽트 하는 경우에 발생.
- supervisor call (SVC) :
모든 데이터를 삭제할거야! 하는 명령을 사용자가 요구했을 때, OS가 이런 말도 안되는 명령어를 받을 경우 인터럽트 해서 처리.
인터럽트 발생 / 종료 Flow
인터럽트 발생 -> CPU가 수행중인 작업 중지. 지정된 위치로 실행위치 변경
인터럽트 종료 -> CPU는 일시 중단되었던 컴퓨팅 재개.
4. 기타 키워드 정리
RAM
- 랜덤 액세스 메모리(Random Access Memory)
- 휘발성 메모리 (한시적으로 저장함)
ROM
- 읽기 전용 메모리 (Read Only Memory)
- 비 휘발성 메모리 (칩에 영구적인 저장)
PC
- 프로그램 카운터 (Program counter, PC)
- CPU 내부에 있는 레지스터 중 하나로, 다음에 실행될 명령어의 주소를 가짐.
BIOS (Basic Input/Output System)
- 운영체제 중 가장 기본적인 소프트웨어이자 컴퓨터의 입출력을 처리하는 펌웨어.
- 컴퓨터를 켜면 시작되는 프로그램으로 하드웨어와 소프트웨어의 데이터의 흐름 관리.
MBR
- master boot record
- 컴퓨터가 부팅될 때 가장 먼저 참조하는 영역.
'CS > 운영체제' 카테고리의 다른 글
[운영체제] 소켓 통신, 서버 - 클라이언트 통신, RPC (2) | 2023.10.23 |
---|---|
[운영체제] 프로세스 간 통신 (1) | 2023.10.23 |
[운영체제] 프로세스 연산(생성 / 종료) (0) | 2023.10.22 |
[운영체제] 프로세스, 스케쥴링, 컨텍스트 스위칭 (0) | 2023.10.22 |
[운영체제] 운영체제의 서비스, 시스템 콜 (0) | 2023.10.21 |
- Total
- Today
- Yesterday
- boj
- 야놀자
- 프로젝트후기
- 데이터베이스
- 채팅기능개발
- 과정중간회고
- be
- qjzl
- 자료구조 #스택 #큐 #덱 #선형자료구조
- 패스트캠퍼스
- 야놀자X패스트캠퍼스부트캠프
- 패스트캠퍼스강의
- 백엔드부트캠프
- 카카오API
- 백엔드개발자
- 국비지원취업
- 국비지원캠프
- springboot
- 백준
- 커리어멘토링
- TiL
- 부트캠프
- #국비지원취업
- 그룹스터디
- 자료구조
- 국비지원
- 그룹스터디워크샵
- 스터디후기
- 백엔드
- Java
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |