선릉역 1번 출구
운영체제1 본문
목차
1. 운영체제의 역할과 목적
2. 운영체제의 기능과 구조
3. 운영체제의 기술발전 흐름
4. 운영체제의 주요 구성 기술
5. 운영체제 별 주요 특징
1-1. 운영체제의 개념 및 역할
- 사용자가 컴퓨터 시스템을 손쉽게 사용하도록 함
- 시스템 자원을 효율적으로 관리하는 프로그램의 집합
- 컴퓨터 하드웨어와 응용 프로그램 간의 I/F(interface)
- cpu, 메모리 등 컴퓨터 자원 관리 및 사용자에게 편의 제공
OS <-> 유틸리티 <-> 응용 프로그램
1-2. 운영체제의 역할과 목적
- 편리성: 사용자가 프로그램을 개발하고 사용하는 데 편리한 환경 제공(GUI) -> "생산성 기대"
- 효율성: 한정된 자원을 효율적으로 사용하기 위해 각 프로그램을 유기적으로 결합해 시스템 성능을 향상시킴
(처리 능력_throughput 향상-멀티 프로그래밍, 멀티 스레딩/응답시간_responsetime 단축-온라인 실시간 처리/신뢰도 향상: 시스템이 정확하게 작동되는 정도 -> 소프트웨어의 성공적인 기능 수행/사용가능도 향상_특정 부품이 고장나도 실제 시스템을 사용가능하게 해주는 빈도-시분할처리, 다중처리)
*MMI(Man Machine Interface)
OS 취약점을 공격하는 "exploit code"
2-1. 운영체제의 기능과 구조
- 입출력 장치 관리: I/O operation, 프로그램 생성 및 실행
- 시스템 자원 관리: 메모리와 프로세스 제어 etc
- 에러 검출과 조치: 에러 발생에 따른 비정상 동작 조치(해커한테 좋은),
- 시스템 성능 감시
- 파일 시스템 조작
- 네트워크/계정 관리
- 보호
크게는 2개로 나눌 수 있음
- 자원 관리(메모리관리[메인메모리, 보조기억장치], 프로세스 관리, 주변장치 관리, 파일(데이터)관리)
- 시스템 관리(시스템보호-사용자 권한 부여, 네트워크 관리, command interpreter)
2-2. 운영체제의 구조
5계층 구조(=커널에 포함이 됨)
- 1계층 프로세스관리: 동기화 및 프로세서 스케줄링
- 2계층 메모리관리: 메모리의 할당 및 회수 기능
- 3계층 프로세스관리: 프로세스의 생성, 제거, 메시지 전달, 시작과 정지
- 4계층 주변장치관리(입출력관리): 주변장치의 상태파악과 입출력 장치 스케줄링
- 5계층 파일관리: 파일의 생성과 소멸, 파일의 열기와 닫기, 파일의 유지 및 관리
*HAL(hardware abstraction layer)
커널(Kernel)
- 하드웨어 특성으로부터 프로그램들을 격리시키고, 하드웨어와 직접적으로 상호작용해 프로그램들에게 일관된 서비스 제공
- 핵심기능(프로세스, 파일 관리)이고, 그 밖에 입출력 장치 관리, 메모리 관리, 시스템호출 인터페이스 수행
- 부팅 시 가장 먼저 읽혀지는 운영체제의 핵심으로 메모리에 상주
- 응용 프로그램 실행에 필요한 다양한 서비스를 제공하고 실행되는 프로세스 스케줄링함
*Interrupt: 지금 하던일을 멈추고 다음에 무슨 작업을 할지 결정하는 역할(여러개가 동시에 처리되는 것 같은 멀티 태스킹이 가능)
프로세스 관리
메모리 관리
주기억장치 관리(RAM): 주기억장치의 접근을 관리, 제어하는 처리 장치의 부분으로 주소 변환, 기억보호, 버퍼 기억 등의 기능을 수행
- ROM: random only memory
- RAM: random access memory
https://information-factory.tistory.com/270
RAM(램)과 ROM(롬) 차이점 쉽게 이해하기!
RAM 이란? ROM 이란? 무엇일까? RAM은 우리가 흔하게 보는 부품입니다. 바로 삼성전자와 SK하이닉스에서 세계에서 제일 잘 만드는 부품으로 "초록색의 긴 막대기 같은 부품"입니다. RAM의 약어는 Random
information-factory.tistory.com
보조기억장치 관리(SSD or HDD)
주변장치 관리(입출력 관리)
- 장치구동기(device driver): 운영체제와 응용 프로그램 및 하드웨어 간의 인터페잇 담당 프로그램, 장치를 제어하기 위한 명령어 생성 및 적절한 수행 여부 점검
- 데이터의 입출력 방식
- 프로그램에 의한 입출력(cpu가 주변장치의 상태를 계속 감시해야함 - polling방식)
- 인터럽트: 입출력 장치가 데이터를 전송할 준비가 되면 cpu에 인터럽트를 발생시킴
- DMA: cpu를 거치지 않고, 주변장치와 메모리 사이에 직접 데이터를 전달하도록 제어하는 인터페이스 방식
- https://ko.wikipedia.org/wiki/%EC%A7%81%EC%A0%91_%EB%A9%94%EB%AA%A8%EB%A6%AC_%EC%A0%91%EA%B7%BC
직접 메모리 접근 - 위키백과, 우리 모두의 백과사전
AMD의 DirectGMA는 DMA의 일종이다. PCIe 버스와 AMD 파이어프로 브랜드 제품 상에서 낮은 레이턴시로 장치 간 P2P 데이터 전송을 가능케 한다. DirectGMA를 지원하는 직렬 디지털 인터페이스(SDI) 장치들은
ko.wikipedia.org
입력데이터: 장치제어기 -> cpu레지스터 -> 주기억장치 전송
출력데이터: 주기억장치 -> cpu레지스터 -> 장치제어기 전송
*Polling 방식
https://how-to-make-a-quadcopter.tistory.com/12
폴링(Polling) 방식
입출력의 상호작용을 할 때는 크게 3가지 방식이 존재한다. 오늘은 폴링을 먼저 알아보겠다. 폴링은 프로그램에 의한 입출력 방식이다. 데이터의 입출력이 CPU가 수행하는 프로그램의 입출력 명
how-to-make-a-quadcopter.tistory.com
'Hacking & Security > 사전교육' 카테고리의 다른 글
운영체제4 (0) | 2022.05.16 |
---|---|
운영체제3 (0) | 2022.05.15 |
운영체제2 (0) | 2022.05.10 |