Blog

__Operating System__ 본문

OS

__Operating System__

JunginKim 2022. 12. 15. 10:47
728x90
반응형
📌

OS의 역할

OS: 하드웨어를 잘 관리해 사용자와 응용 프로그램에 서비스를 제공하는 것

  • 사용자 인터페이스 관리
    • 사용자가 컴퓨터를 보다 쉽게 이용하기 위해 직접적 상호작용 부분인 화면은 더 쉬워야 함
    • CUI(CLI) → GUI로 넘어온 상태
  • 자원 관리
    • 자원은 하드웨어와 소프트웨어로 나뉨
    • 하드웨어를 효율적으로, 소프트웨어가 잘 작동하도록 관리하는 주체가 운영체제
  • 프로세스 및 스레드 관리
    • 프로세스는 프로그램 실행의 주체
    • 스레드는 좀 더 가벼운 프로세스
  • 시스템 관리
    • 보안을 포함한 시스템 관리작업을 수행하는 것도 운영체제의 역할 중 하나

OS의 위치

HW > OS > Programs

하드웨어와 어플리케이션 프로그램 사이에 운영체제가 위치

운영체제는 크게 커널과 시스템 콜 인터페이스로 나뉨

  • 커널: 다양한 기능을 제공, 사용자가 직접 접근 시 문제가 발생할 수 있음
  • 시스템 콜 인터페이스: 사용자가 커널에 접근해 사용할 수 있는 것들을 모아놓은 것 직접 조작이 아닌 OS에 요청하게끔 해주는 통로(시스템 라이브러리) → 조금 더 알아보기

HW > OS(커널(자원 관리) > 시스템 콜 인터페이스) > 어플리케이션 프로그램

OS의 종류

동시 사용자의 수

구분설명예시
Single-user system혼자 사용하는 OSWindows, Android, ios
Multi-user system여러명이 같이 쓰는 OS 호스트 시스템을 사용한다는 의미 서버에서 돌아가는 시스템들을 여럿이서 동시에 사용 자원 관리가 어려움 (누구에게 어떤 자원 할당할 지, 자원 사용의 우선순위 등)Unix, Linux, Windows server

동시에 실행할 수 있는 프로그램 수

구분설명예시
Single-tasking system한 번에 한 작업만 수행 가능MS-DOS, Windows cmd
Multi-tasking system (Multi-programming system)동시에 다중 작업 수행 가능 동시에 여러 작업을 하므로 복잡함(동기화, 동시 수행 관리 등)Windows, Linux, Unix

작업 수행 방식(사용자 기준)

구분설명
순차 처리 시스템(~`1940)• OS의 개념 없이 기계어로 프로그램 작성부터 하드웨어 관리 등 사용자가 작성 • 다른 작업을 연속해서 수행 시 시간이 오래 걸림
배치 시스템(`1950~`1960)• 특정 단위 만큼의 작업이 모일 시 일괄적으로 처리하는 시스템 • 세팅 시간을 줄일 수 있었음 • 시스템 자원을 공유할 수 있음 • 대기 시간으로 인해 생산성 저하
시분할 시스템(`1960~`1970)• 작업들을 번갈아가며 조금씩 수행해 대기 시간을 줄임 • 배치 시스템보다 사용자 지향적, 대화형 시스템이라 생산성 증가 • 운영체제가 복잡해짐(File System이나 가상 메모리 관리 작업 등) • 통신 비용, 보안 문제, 동시 사용자 수에 따라 시스템 부하 등 문제가 발생
퍼스널 컴퓨팅• OS를 독점해 사용하는 방식 • 사용자 지원 기능이 중요해서 탄생 • 운영체제가 단순화되고 사용자 편의성 증대
병렬 처리 시스템• 하나의 시스템에 여러 프로세스를 사용하는 방식 • tightly-coupled system이라고도 불림 • 성능 향상과 신뢰성 향상을 위해 활용 • 프로세서 간 작업을 배분할지의 역할도 추가적으로 지정해야 해 더 복잡함
분산 처리 시스템• 컴퓨터들을 연결시킨 네트워키 기반의 서비스 • 개별 컴퓨터(node)들의 자원은 독립적으로 존재(OS가 노드마다 존재) • loosely-coupled system이라고도 불림 • 물리적 통신망을 이용하기에 연결은 쉬우나 관리가 어려움 • 관리하는 분산 운영 체제를 통해 하나의 프로그램, 자원처럼 활용 가능 ◦ ex) 클러스터 시스템, 클라이언트 서버 시스템, P2P • 높은 성능, 신뢰성, 확장성 • 구축 및 관리의 어려움
실시간 시스템• 위 시스템들과 별개로 개선이 아닌 새로운 관점의 작업처리 방식 • 작업 처리에 제한을 둠, 작업 요청 시 무조건 답을 줘야하는 시스템 • 하드 리얼타임 시스템: 시간 안에 결과를 보장하지 못하면 큰 문제가 발생하는 시스템 ◦ ex) 원자력 발전 관련 시스템, 무기 제어 • 소프트 리얼타임 시스템: 시간 내에 결과를 보장 못해도 심각한 문제를 발생하지 않는 시스템 ◦ ex) 동영상 인코더

Uploaded by N2T

728x90
반응형
Comments