▶클릭◀ 암보험,실비보험 가입시 주의사항

 

▶클릭◀ 병원 약국에서 지출한 병원비 약값 최대 80% 보장받기

 

운영체제는 하드웨어를 관리할 뿐 아니라 응용 프로그램이 실행되기 위한 환경을 제공하는 소프트웨어다. 아마도 운영체제 중에서 가장 가시적인 부분은 인간에게 제공되는 컴퓨터 시스템을 사용하기 위한 인터페이스일 것이다.

 

컴퓨터가 프로그램을 실행하려면 프로그램이 주 메모리에 있어야 한다. 주 메모리는 처리기가 직접 접근할 수 있는 유일한 대량 저장장치이다. 주 메모리는 수백만에서 수십억까지의 크기를 가지는 바이트나 워드의 배열이다. 각 워드는 자신의 주소를 가지고 있다. 주 메모리는 전원이 꺼지거나 중단되면 그 내용을 잃게 되는 휘발성 저장 장치이다. 대부분의 컴퓨터 시스템은 주 메모리의 확장으로서 보조 저장장치를 제공한다. 보는 지장장치는 대용량의 데이터를 영원히 보존할 수 있는 비휘발성 형태의 저장장치이다. 가상 흔한 보조 저장장치는 프로그램과 데이터를 위한 지장 장소를 제공하는 자가디스크이다.

컴퓨터 시스템의 다양한 저장장치들은 속도와 비용에 따라 계층 구조로 구성된다. 상위 계층일수록 비싸지만 속도가 빠르다. 계층 구조 아래쪽으로 내려올수록 일반적으로 비트 당 비용은 감소하고 접근 속도는 증가한다.

컴퓨터 시스템을 설계하는 데에는 다양한 전략들이 있다. 단일처리기 시스템은 하나의 처리기만을 가지는 반면에 다중처리기 시스템은 물리 메모리와 주변장치들을 공유하는 둘 또는 그 이상의 처리기를 가지고 있다. 가장 일반적인 다중처리기의 설계는 대칭형 다중처리기이다. 이 다중처리기는 처리기들이 동등하게 취급되며 다른 처리기와는 독립적으로 실행된다. 클러스터형 시스템은 다중처리기의 특별한 형태이며 LAN으로 연결된 다수의 컴퓨터들로 구성된다.

CPU를 최대한 활용하기 위하여 현대의 운영체제들은 다중 프로그래밍 개념을 도입하였다. 다중 프로그래밍에서는 한 번에 여러 작업들이 메모리에 유지된다. 따라서 CPU는 항상 실행할 작업을 가지게 된다. 시분할 시스템은 다중 프로그래밍의 확장이며 CPU 스케줄링 알고리즘은 작업들을 빠르게 교환해 가며 실행함으로써 마치 각 작업이 동시에 실행되는 것 같은 착각을 유발시킨다.

운영체제는 컴퓨터 시스템의 정확한 동작을 보장해야 한다. 사용자 프로그램이 시스템의 정상적인 동작을 방해하는 것을 막기 위해 하드웨어는 두 가지 모드, 사용자 모드와 커널 모드를 가진다. 여러 가지의 특권 명령(이를테면, 입출력 명령과 중지(halt) 명령)은 커널 모드에서만 실행될 수 있다. 또한, 운영체제가 저장되어 있는 메모리는 사용자에 의한 변경으로부터 보호되어야 한다. 타이머는 무한 루프를 방지한다. 이러한 설비(이중 모드, 특권 명령들, 메모리 보호, 타이머 인터럽트)들이 운영체제가 정확한 동작을 달성하기 위해 사용하는 기본 구조이다.

프로세스(또는 작업)는 운영체제에서 일의 기본적인 단위이다. 프로세스 관리는 프로세스의 생성 및 제거, 서로 간의 통신 및 동기화를 위한 기법의 제공을 포함한다. 운영체제는 어느 프로세스가 메모리의 어느 영역을 사용하고 있는지를 추적하여 메모리를 관리한다. 또한 운영체제는 메모리 공간의 동적 할당 및 반환을 책임진다. 저장 공간 또한 운영체제에 의해 관리되고, 파일과 디렉터리를 표현하기 위한 파일 시스템을 제공하고, 대용량 저장장치의 공간을 관리한다.

그리고 운영체제는 운영체제와 사용자를 보호하고 보안을 유지해야 한다. 보호는 컴퓨터 시스템이 제공하는 자원들에 대한 프로세스와 사용자의 접근을 제어하는 기법을 말한다. 보안 기법은 외부 또는 내부의 공격에 대해 컴퓨터 시스템의 방어를 책임진다. 분산 시스템은 사용자가 컴퓨터 네트워크로 연결된 그리고 지리적으로 떨어져 있는 컴퓨터의 자원에 접근할 수 있게 한다. 이 서비스들은 클라이언트-서버 모델 또는 피어간 모델 형태로 제공된다. 클러스터형 시스템에서는 다수의 컴퓨터들이 공유 저장장치에 존재하는 데이터에 대한 연산을 할 수 있다. 또한 클러스터 구성원의 일부가 고장나더라도 연산은 계속 진행될 수 있다.

LAN과 WAN은 네트워크의 두 기본 형태이다. LAN은 좁은 지역에 존재하는 처리기들끼리의 통신을 가능하게 하고, 반면에 WAN은 넓은 지역에 퍼져 있는 처리기들끼리도 통신할 수 있게 한다. LAN은 일반적으로 WAN보다 빠른 통신을 제공한다.

특정 목적을 가진 컴퓨터 시스템들이 존재한다. 이 시스템에는 소비자 가전 및 자동차, 로봇 등의 내장형 환경을 위해 설계된 실시간 운영체제가 포함된다. 실시간 시스템 운영체제는 명확하게 정의된, 고정된 시간 제약을 가진다. 처리는 반드시 정의된 제한내에 되어야 하며, 그렇지 않으면 시스템은 실패한다. 멀티미디어 시스템은 멀티미디어 데이터의 전달에 관여하며 음성, 영상 또는 두 데이터의 합성 등의 디스플레이나 플레이를 위한 특정 요구 조건을 가지게 된다.

최근, 인터넷과 월드 와이드 웹의 영향으로 웹 브라우저와 네트워킹 및 통신 소프트웨어를 필수 기능으로 포함하는 현대적 운영체제가 개발되고 있다.

 

무료 소프트웨어 운동은 운영체제를 포함한 수천 개의 오픈소스 프로젝트를 창출하였다. 이러한 프로젝트 때문에 학생들은 소스코드를 학습도구로 사용할 수 있다. 학생들은 프로그램을 수정하여 시험하고, 버그를 발견하고 수정하는 데 도움을 주거나 성숙하고 완전한 기능을 갖춘 운영체제, 컴파일러, 툴, 사용자 인터페이스 및 다른 종류의 프로그램을 탐구할 수 있다.

GNU/Linux, BSD UNIX 및 Solaris는 모두 오픈소스 운영체제이다. 무료 소프트웨어와 오픈소스화의 장점은 오픈소스 프로젝트의 개수와 질을 향상시키고, 결과적으로 이 프로젝트를 이용하는 개인 및 회사의 수를 증가시킬 것이다.

'컴퓨터 구조' 카테고리의 다른 글

프로세스 동기화에 대해서  (0) 2022.04.16
cpu 스케줄링  (0) 2022.04.16
다중 스레드 프로그래밍  (0) 2022.04.16
프로세스의 일련 과정  (0) 2022.04.16
컴퓨터 시스템 구조에 대해서..  (0) 2022.04.16
본 광고는 광고심의기준을 준수하였으며, 유효기간은 심의일로부터 1년입니다.

+ Recent posts