티스토리 뷰
1. 운영체제 소개
1) 생활 속 운영체제
- 임베디드 시스템: 기계나 기타 제어가 필요한 시스템에 대해, 제어를 위한 특정 기능을 수행하는 컴퓨터 시스템으로 장치 내에 존재하는 전자 시스템
2) 운영체제의 정의
- 정보: 컴퓨터가 데이터를 처리로 만들어진 의미 있는 자료
- IT: 데이터를 가공해 가치 있는 정보로 만드는 모든 기술
- 소프트웨어: 응용 프로그램(한글, 메모장 등) + 시스템 소프트웨어(운영 체제, 컴파일러 등)
- 운영체제: 응용 프로그램의 잘못된 동작으로 컴퓨터가 망가지는 것을 막기 위해 컴퓨터 전체를 관리하고 운영하는 소프트 웨어, 모든 소프트웨어 위에 존재.
- 운영체제는 응용 프로그램과 사용자에게서 모든 컴퓨터 자원을 숨겨 이를 보호한다.
- 펌웨어: 하드웨어와 소프트웨어의 특성을 모두 갖춘 형태
3) 컴퓨터 구조와 운영체제
- 운영체제: 커널 + 인터페이스
- 커널: 운영체제의 핵심 기능을 모아놓은 것으로 운영체제의 성능은 커널이 좌우한다.
- 사용자는 커널을 통해서만 컴퓨터 자원에 접근 가능
- 인터페이스: 사용자와 응용프로그램에 인접해 커널에 사용자의 명령을 전달하고 실행결과를 사용자에게 알려준다.
- 사용자 인터페이스(UI): 사람과 컴퓨터 사이의 상호작용을 위한 중간 매개체
- 그래픽 사용자 인터페이스(GUI): 사용자가 편리하게 사용할 수 있도록 입출력 등의 기능을 알기 쉬운 그래픽으로 나태낸 것
4) 운영체제의 역할
- 자원 관리(효율성)
- 자원 보호(안정성)
- 하드웨어 인터페이스 제공(확장성)
- 사용자 인터페이스 제공
2. 운영체제의 발전
1) 초창기 컴퓨터
- 최초의 컴퓨터 에니악
- 키보드, 마우스와 같은 주변장치가 없었음
- 하드와이어링 방식: 전선을 연결하여 논리 회로를 구성
2) 일괄 작업 시스템
- IC는 진공관과 전선으로 만들어진 논리회로를 아주 작은 크기로 구현한 것
- 입력장치로 천공카드 리더, 출력장치로 라인 프린터 사용
- 일괄 작업 시스템: 필요한 프로그램과 데이터를 동시에 입력해야 작업이 가능, 실행 중간에 수정x
- 계산 위주의 작업
3) 대화형 시스템(interactive system)
- 키보드와 모니터가 등장해 작업 중간에 입력과 결과 값 확인 가능
- 대화형 시스템: 컴퓨터와 사용자의 대화를 통해 작업이 이뤄지는 시스템
- 문서 편집기, 게임과 같은 응용 프로그램 개발
4) 시분할 시스템(time sharing system)
- 멀티프로그래밍 기술: 하나의 CPU로 여러 작업을 동시에 실행하는 기술
- 시분할 시스템: 여러 작업을 조금씩 처리해 작업이 동시에 이루어지는 것처럼 보이게 하는 것
- 잘게 나뉜 시간 한 조각을 타임 슬라이스라고 한다.
- 여러 작업을 동시에 처리하기 위해 추가 작업이 필요하다.
5) 분산 시스템
- 네트워크상에 분산된 여러 컴퓨터로 작업을 처리하고 그 결과를 상호 교환하도록 구성한 시스템
- 모든 참가자의 지위가 동일함
6) 클라이언트/서버 시스템
- 작업을 요청하는 클라이언트와 응답하여 요청받은 작업을 처리하는 서버의 이중구조
- 모든 요청이 서버로 집중되기에 서버 과부하 문제가 있다.
7) P2P 시스템
- 서버는 중재만 하고, 파일을 얻고자 하는 말단 사용자가 파일을 가진 사용자로부터 직접 다운로드하는 시스템
- 대표적으로 메신저 카카오톡이 있음
8) 클라우드 컴퓨팅
- 하드웨어와 소프트웨어를 클라우드라고 불리는 중앙 시스템에 숨기고 사용자는 필요한 서비스만 그때그때 이용
- 언제 어디서나 컴퓨팅 파워와 소프트웨어에 접근할 수 있는 유연한 컴퓨팅 환경
9) 사물 인터넷
- 사물이 인터넷에 연결된 시스템(Internet of Things)
3. 운영체제의 구성
1) 커널과 인터페이스
- 유닉스 계열의 커널: 문자 기반 사용자 인터페이스 > shell
- 윈도우 계열의 커널: 문자 기반 사용자 인터페이스 > cmd
2) 시스템 호출
- 시스템 호출: 커널이 자신을 보호하기 위해 만든 인터페이스로 함수 형태로 제공된다.
- 사용자가 자발적으로 커널 영역에 진입할 수 있는 유일한 수단
- 유사한 용어로 응용 프로그램 인터페이스(API), SDK가 있다.
3) 드라이버
- 커널과 하드웨어의 인터페이스, 다양한 종류의 하드웨어를 커널에 연결한다.
- 마우스, 키보드 등 복잡하지 않은 드라이버는 커널에 포함되어 있어서 컴퓨터에 연결만해도 작동되지만 그래픽카드, 프린터 등 복잡한 디바이스는 사용자가 직접 설치해야한다.
4) 커널의 역할과 종류
- 역할: 프로세스, 메모리, 파일 시스템, 입출력, 프로세스 간 통신 관리
- 종류: 단일형 구조, 계층형 구조, 마이크로 구조 커널
'Study > OS' 카테고리의 다른 글
기말고사 정리2 (1) | 2023.06.09 |
---|---|
기말고사 정리1 (2) | 2023.06.08 |
Chapter 04 CPU 스케줄링 (0) | 2023.04.16 |
Chapter 03 프로세스와 스레드 (0) | 2023.04.13 |
Chapter 02 컴퓨터의 구조와 성능 향상 (0) | 2023.04.10 |