You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
운영체제는 컴퓨터 하드웨어 바로 위에 설치되는 소프트웨어 계층
사용자 및 다른 모든 소프트웨어와 하드웨어를 연결, 모든 컴퓨터 시스템의 필수적인 부분 !
협의의 운영체제 (커널) : 운영체제의 핵심 부분으로 메모리에 상주하는 부분
광의의 운영체제 : 커널 뿐 아니라 각종 주변 시스템 유틸리티를 포함한 개념
2. 운영체제의 목표
컴퓨터 시스템을 편리하게 사용할 수 있는 환경을 제공
운영체제는 동시 사용자/ 프로그램들이 각각 독자적 컴퓨터에서 수행되는 것 같은 환상을 제공
하드웨어를 직접 다루는 복잡한 부분을 운영체제가 대행
컴퓨터 시스템의 자원을 효율적으로 관리 ( Resource sharing )
프로세서, 기억장치, 입출력 장치 등의 효율적인 관리 : 사용자 간의 형평성 있는 자원 분배, 주어진 자원으로 최대한의 성능을 내도록
실행중인 프로그램들에게 짧은 시간씩 CPU를 번갈아 할당
실행중인 프로그램들에 메모리 공간을 적절히 분배
3. 운영체제의 분류
- 동시 작업 가능 여부
단일 작업 : 한번에 하나의 작업만 처리
다중 작업 : 동시에 두 개 이상의 작업 처리 ( 한 명령의 수행이 끝나기 전에 다른 명령이나 프로그램을 수행할 수 있음)
- 사용자의 수
단일 사용자
다중 사용자 ( 유닉스 , 리눅스 등)
- 처리 방식
일괄 처리 ( batch processing ) : 작업 요청의 일정량 모아서 한꺼번에 처리, 작업이 완전 종료될 때까지 기다려야 함.
시분할 ( time sharing ) : 여러 작업을 수행할 때 컴퓨터 처리 능력을 일정한 시간 단위로 분할하여 사용, 일괄처리 시스템에 비해 짧은 응답시간을 가짐. interactive한 방식
실시간 ( realtime OS ) : 정해진 시간 안에 어떠한 일이 반드시 종료됨이 보장되어야하는 실시간 시스템을 위한 OS
실시간 시스템의 개념 확장 : Hard, Soft realtime system
현재의 운영체제는 다중 작업 , 다중 사용자, 시분할 방식
4. 몇 가지 용어
Multitasking
Multiprogramming
Time sharing
Multiprocess
=> 위의 용어들은 컴퓨터에서 여러 작업을 동시에 수행하는 것을 뜻함
Multiprogramming은 여러 프로그램이 메모리에 올라가 있음을 강조
Time Sharing은 cpu의 시간을 분할하여 나누어 쓴다는 의미를 강조
Multiprocesser : 하나의 컴퓨터에 CPU가 여러개 붙어 있음을 의미
5. 운영체제의 예
유닉스
코드의 대부분을 C언어로 작성
높은 이식성
최소한의 커널 구조
복잡한 시스템에 맞게 확장 용이
소스코드 공개
프로그램 개발에 용이
다양한 버전
DOS
단일 사용자용 운영체제, 메모리 관리 능력의 한계
MS Windows
MS 사의 다중 작업용 GUI 기반 운영체제
Plug and Play, 네트워크 환경 강화
DOS용 응용 프로그램과 호환성 제공
불안정성
풍부한 지원 소프트웨어
Handheld device를 위한 OS
6. 운영체제의 구조
CPU (누구한테 CPU를 줄까 ? CPU 스케줄링)
<=> memory ( 한정된 메모리를 어떻게 쪼개어 쓰지? 메모리 관리 )
<=> Disk , I/O device (디스크에 파일을 어떻게 보관하지? 파일 관리
/ 각기 다른 입출력 장치와 컴퓨터 간에 어떻게 정보를 주고 받게 하지? 입출력 관리 )
프로세스 관리 : 프로세스의 생성과 삭제, 자원할당 및 반환, 프로세스 간 협력
그 외 : 보호시스템, 네트워킹, 명령어 해석기
The text was updated successfully, but these errors were encountered:
Operating System - Introduction
항상 비전공자로서 느꼈던 CS 지식 부족 이슈 ㅎ.. 열심히 채워보자 ~
1. 운영체제란 무엇인가?
운영체제는 컴퓨터 하드웨어 바로 위에 설치되는 소프트웨어 계층
사용자 및 다른 모든 소프트웨어와 하드웨어를 연결, 모든 컴퓨터 시스템의 필수적인 부분 !
2. 운영체제의 목표
컴퓨터 시스템을 편리하게 사용할 수 있는 환경을 제공
컴퓨터 시스템의 자원을 효율적으로 관리 ( Resource sharing )
3. 운영체제의 분류
- 동시 작업 가능 여부
단일 작업 : 한번에 하나의 작업만 처리
다중 작업 : 동시에 두 개 이상의 작업 처리 ( 한 명령의 수행이 끝나기 전에 다른 명령이나 프로그램을 수행할 수 있음)
- 사용자의 수
단일 사용자
다중 사용자 ( 유닉스 , 리눅스 등)
- 처리 방식
일괄 처리 ( batch processing ) : 작업 요청의 일정량 모아서 한꺼번에 처리, 작업이 완전 종료될 때까지 기다려야 함.
시분할 ( time sharing ) : 여러 작업을 수행할 때 컴퓨터 처리 능력을 일정한 시간 단위로 분할하여 사용, 일괄처리 시스템에 비해 짧은 응답시간을 가짐. interactive한 방식
실시간 ( realtime OS ) : 정해진 시간 안에 어떠한 일이 반드시 종료됨이 보장되어야하는 실시간 시스템을 위한 OS
실시간 시스템의 개념 확장 : Hard, Soft realtime system
현재의 운영체제는 다중 작업 , 다중 사용자, 시분할 방식
4. 몇 가지 용어
=> 위의 용어들은 컴퓨터에서 여러 작업을 동시에 수행하는 것을 뜻함
Multiprogramming은 여러 프로그램이 메모리에 올라가 있음을 강조
Time Sharing은 cpu의 시간을 분할하여 나누어 쓴다는 의미를 강조
Multiprocesser : 하나의 컴퓨터에 CPU가 여러개 붙어 있음을 의미
5. 운영체제의 예
유닉스
코드의 대부분을 C언어로 작성
높은 이식성
최소한의 커널 구조
복잡한 시스템에 맞게 확장 용이
소스코드 공개
프로그램 개발에 용이
다양한 버전
DOS
단일 사용자용 운영체제, 메모리 관리 능력의 한계
MS Windows
MS 사의 다중 작업용 GUI 기반 운영체제
Plug and Play, 네트워크 환경 강화
DOS용 응용 프로그램과 호환성 제공
불안정성
풍부한 지원 소프트웨어
Handheld device를 위한 OS
6. 운영체제의 구조
CPU (누구한테 CPU를 줄까 ? CPU 스케줄링)
<=> memory ( 한정된 메모리를 어떻게 쪼개어 쓰지? 메모리 관리 )
<=> Disk , I/O device (디스크에 파일을 어떻게 보관하지? 파일 관리
/ 각기 다른 입출력 장치와 컴퓨터 간에 어떻게 정보를 주고 받게 하지? 입출력 관리 )
프로세스 관리 : 프로세스의 생성과 삭제, 자원할당 및 반환, 프로세스 간 협력
그 외 : 보호시스템, 네트워킹, 명령어 해석기
The text was updated successfully, but these errors were encountered: