컴퓨터 시스템
컴퓨터란?
컴퓨터는 범용 계산기이다.
숫자 연산만 수행하는 수치 계산기와 달리
다양한 형태의 데이터로, 다양한 종류의 계산을 수행하여, 다양한 행위를 할 수 있다.
컴퓨터 프로그램은 계산을 수행하기 위한 명령어들의 집합이다.
컴퓨터는 컴퓨터 프로그램에 따라 주어진 데이터를 처리한다.
컴퓨터는 주어진 명령들을 반복적으로 처리해주는 계산 기계로,
잘못된 명령이나 데이터로는 올바른 결과를 얻을 수 없다.
많은 양의 데이터를 비교적 고속으로, 정확히, 효율적으로 작업할 수 있기 때문에 사용한다.
컴퓨터의 구성
컴퓨터는 하드웨어(hardware)와 소프트웨어(software)로 구성된다.
- 하드웨어는 컴퓨터 시스템을 구성하는 물리적인 기계 장치,
- 소프트웨어는 하드웨어를 동작시키는 명령들의 집합이다.
소프트웨어는 시스템 소프트웨어(System Software)와 응용 소프트웨어(Application Software)로 나눌 수 있다.
- 시스템 소프트웨어는 컴퓨터 사용을 지원해주는 프로그램으로,
운영체제, 유틸리티, 개발 SW가 있다. - 응용 소프트웨어는 컴퓨터를 사용하는 특정 목적을 수행하는 프로그램이다.
🔎 유틸리티
원활한 시스템 사용을 지원해주는 프로그램
백신, 압축 등 특정 목적을 수행하기 위해서가 아닌, 특정 목적 달성에 도움을 주기 위해 사용한다.
운영체제에 포함되어 있는 경우가 많다.
💡소프트웨어 vs 프로그램
소프트웨어는 프로그램을 포함하는, 더 넓은 개념이다.
프로그램이 소스 파일을 의미한다면, 소프트웨어는 소스 파일과 글꼴, 이미지, 문서 등 실행에 필요한 부가적인 데이터까지 포함하는 개념이다.
운영체제 (Operating System)
운영체제는 하드웨어를 관리하는 소프트웨어로, 응용 소프트웨어 실행을 위한 기반을 제공한다.
기능
I/O(입출력 장치) 동작과 자원 관리, 다중 프로그래밍(multi programming) 기능을 제공해
효율성, CPU utilization(이용률)이 증가한다.
운영체제는 사용자와 하드웨어 사이에서 중재자 역할을 한다.
사용자 → 응용 소프트웨어 → 운영 체제 → 하드웨어
응용 소프트웨어가 운영체제에 요청을 보내면,
운영체제가 하드웨어를 관리하여 목적을 달성할 수 있게 한다.
하드웨어는 운영체제가 독점적으로 관리하므로 응용 소프트웨어가 관리하지 않아도 된다.
목적
운영체제를 이용하면 컴퓨터 시스템을 편리하고, 효율적으로 이용할 수 있다.
실행
운영체제는 부팅 시 메모리에 적재되어 가장 먼저 실행되고, 컴퓨터가 종료될 때까지 실행된다.
컴퓨터의 모든 자원에 대해 배타적 독점 사용 권한을 지니며
응용 소프트웨어는 컴퓨터 자원을 사용하고자 할 때 반드시 운영체제에게 요청해야 한다.
🔎운영체제가 없다면?
시스템을 편리하고 효율적으로 사용할 수 없게 된다.
하나의 프로그램만 실행할 수 있어 범용성이 없고, 그 프로그램이 효율적으로 실행되지 않는다.
운영체제가 없어도 각 응용 프로그램을 이용해 하드웨어를 동작시킬 수 있지만,
각 응용 프로그램이 하드웨어를 직접 관리해야 한다.
응용 프로그램마다 다르게 하드웨어를 관리하면
같은 위치에 저장하는 등 문제 생길 수 있고, 프로그램 규모도 커지게 된다.
💡운영체제 vs 응용 소프트웨어
운영체제 응용 소프트웨어 목적&기능 자원 관리 특정 목적 수행 실행 컴퓨터 실행되는 동안 사용자 명령에 따라 권한 컴퓨터 자원에 대한 독점적 권한 운영체제에게 요청