Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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
- OS
- 모던자바
- 자료구조
- Java8
- programmers
- DFS
- Spring
- DP
- kotlin
- LEVEL2
- 백준
- 알고리즘
- Brute-force
- 스프링
- 네트워크
- 자바
- backtracking
- 백트래킹
- 프로젝트
- lambda
- baekjoon
- 그래프
- 프로그래머스
- BFS
- TDD
- back-end
- 운영체제
- java
- 코틀린
- algorithm
Archives
- Today
- Total
요깨비's LAB
1. Introduction to Operation System 본문
m1-1. 운영체제의 정의
컴퓨터 하드웨어 바로 윗단에 설치되어 사용자 및 다른 모든 소프트웨어와 하드웨어를 연결하는 소프트웨어 계층.
- 좁은 의미의 OS(커널) : 운영체제의 핵심부분으로 메모리에 상주하는 부분
- 넓은 의미의 OS : 커널 + 각종 시스템 유틸리티
1-2. 운영체제의 기능
- 하드웨어적 관점 : 컴퓨터 시스템의 자원을 효율적으로 관리
- 프로세서, 기억장치, 입출력 장치 등의 효율적 관리, 사용자 간의 형평성 있는 자원 분배, 주어진 자원으로 최고의 성능을!
- 사용자 및 운영체제 자신을 보호(보안)
- 프로세스, 파일, 메시지 등을 관리
- 사용자 관점 : 동시 사용자 및 프로그램들에게 각각 독자적으로 컴퓨터를 사용하는 것과 같은 환상 제공
- 하드웨어를 직접 다루는 복잡한 부분은 운영체제가 대행해주고, 각 사용자 및 프로그램은 그에대한 자세한 내용을 알지 못해도 프로그램을 수행할 수 있도록 해주는 기능.<추상화>
ex) 사용자는 파일이 디스크에 어떻게 저장되는지 몰라도 운영체제가 제공하는 인터페이스(ctrl + s)를 통해 손쉽게 저장
1-3. 운영체제의 분류
1) 동시 작업 가능 유무
- 단일작업(Single tasking) : 한번에 하나의 작업만 처리(MS-DOS)
- 다중작업(Multi tasking) : 동시에 두개 이상의 작업처리 (기존 OS들) => 완전 동시X, 번갈아가면서
-> 시분할 시스템 (CPU 관점)
-> 다중 프로그래밍 시스템(Memory 관점) : 메모리 공간을 분할해 여러 프로그램들을 동시에 올려놓고 처리하는 시스템
2) 사용자의 수
- 단일 사용자(MS-DOS, windows)
- 다중 사용자(UNIX, NT Server)
3) 처리 방식
- 일괄 처리방식(batch processing) : 작업 요청량을 일정량 모아서 한꺼번에 처리, 작업이 완전히 종료될 때까지 기다려야함.
- 시분할 방식(time sharing processing) : 여러 작업을 수행할 때 컴퓨터 처리 능력을 일정한 시간 단위로 분할해 사용 ex. unix
- 실시간 운영체제(real time OS) : 정해진 시간안에 어떠한 일이 반드시 종료됨이 보장되어야 하는 실시간 시스템을 위한 OS
- hard real time system : 원자로 공장 제어, 미사일 제어, 반도체 장비, 로보트 제어 같이 주어진 시간을 지키지 못할 경우
위험한 결과를 초래할 수 있는 시스템
- soft real time system : 멀티미디어 스트리밍 시스템같이 데이터가 시간에 맞추어 전달되어야 올바른 기능을 수행할 수 있는 시스템
twitch, AfreekaTV같이...
* Multi Programming VS Multi Tasking
- Multi Programming은 메모리에 항상 여러개의 job을 올려놓음으로써 CPU가 항상 작업을 할 수 있도록 해주는 것.
어떠한 JOB이 특정 I/O를 기다려야 할때, 무작정 기다리지 않고 다른 JOB을 받아서 계속 처리... - Multi Tasking은 Multi Programming + time sharing으로 일정한 이벤트에 의해서 JOB을 바꾸는
Multi Programming과는 달리, 굉장히 자주 JOB을 교체해줌으로써 사용자가 각각의 JOB과 꾸준히
interaction할 수 있는 환경을 제공한다.
1-4. 운영체제의 자원관리 기능
'컴퓨터 공학기초 > 운영체제' 카테고리의 다른 글
프로세스(2) (0) | 2020.09.02 |
---|---|
프로세스(1) (0) | 2020.09.02 |
3. 인터럽트의 원리(2) (0) | 2020.01.23 |
3. 인터럽트의 원리(1) (0) | 2020.01.23 |
2. 컴퓨터 시스템의 동작원리 (0) | 2019.12.04 |
Comments