Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 프로세스
- 스케듈링
- 운영체제
- System Structures
- Process scheduling
- 링크드리스트
- 자료구조
- interprocess communication
- operating
- C
- Data Structure
- 프로토콜 체계
- 열혈
- 큐
- DS
- direct communication
- Operating System
- Queue
- OS
- 데이타구조
- stack
- socket
- process
- indirect communication
- IPC
- 데이터구조
- 윤성우
- tcp
- 스택
- linked list
Archives
- Today
- Total
미래와 연결될 첫걸음
#2.1 System Structures - OS services 본문
OS는 사용자(User) 측면과 시스템(System) 측면에서 프로그램을 실행하기 위한 여러 services를 제공합니다.
▶ 사용자(User) 측면
- User interface(UI) : 거의 모든 OS는 UI를 가지고 있고, 여러 형태를 가지고 있습니다. text명령어를 사용하는 Command-Line Interface(CLI), file에 명령어가 들어가 있고, 이 file 실행시킴으로 명령어를 실행하는 batch interface, 대게 일반적으로 사용되는 Graphical User Interface(GUI)가 있습니다. UI 서비스를 OS에서 지원해줍니다.
- Program execution : 프로그램이 memory에 Load하여 프로그램을 실행되는 것, 또 정상적이든 비정상적이든 종료시키는 것을 OS에서 지원합니다.
- I/O operations : 실행중인 프로그램은 I/O를 필요로 할 수 있으며, 특히 CD나 DVD에 기록하는 등 특정한 I/O 장치는 특정한 기능이 필요합니다. 이러한 기능을 효율과 보호차원에서 사용자가 직접적으로 컨트롤할 수 없도록 하고 대신 OS에서 지원합니다.
- File-system manipulation : 프로그램은 반드시 폴더나 파일에 read(읽기), write(쓰기), create(생성), delete(제거), search(검색) 등이 필요하기 때문에 파일시스템은 상당히 중요합니다. 소유권에 따라 이러한 것을 가능하도록 권한주거나 거부하는 것을 OS가 해줍니다.
- Communication : 같은 컴퓨터 혹은 네트워크 내에서 한 컴퓨터에서 다른 컴퓨터로 프로세스끼리 정보를 교환 할 때, shared memory 영역에 읽거나 쓰는데 이를 OS가능하게 해줍니다. 또, message passing을 통해 packet들이 프로세스끼리 이동하는 것도 OS가 해줍니다.
- Error detection : OS는 다양한 곳(CPU, memory, I/O device등)에서 발생하는 error를 발견하거나 고쳐줍니다.
▶ 시스템(System) 측면
- Resource allocation : 여러 사용자나 job이 동시에 발생될 때 resources(CPU, memory 등)은 반드시 각각 그들에게 할당되어야 합니다. 예를 들어, CPU 속도와 같이 반드시 실행되어야 하는 것들과 사용가능한 register에 따라 CPU가 효율적으로 쓰이도록 CPU-scheduling routines이 짜여져 있습니다. 이러한 routine들이 resource type에 따라 짜여져 있으며 이를 OS에서 지원합니다.
- Accounting : 사용자가 어떤 resources를 얼마나 사용하는지를 금액을 부여하기 위해 혹은 단순히 통계를 내기 위해 기록됩니다.
- Protection and security : Protection은 OS 내에서 오류가 나지않도록 보호하는 것을 말합니다. 가령, 분리된 여러 프로세스들이 동시에 실행되고 있는 상황에서, 한 프로세스가 다른 프로세스나 OS를 방해하는 것이 안 되도록 막는 것입니다. Security는 외부에서 오는 위협을 막습니다. 예를 들어, 사용자의 비밀번호를 입력할 때, 어떠한 유효하지 않은 접근 시도가 있었다면 I/O 장치를 막는 것을 말합니다.
해당 내용은 Operating System Concepts (International Student Version)을 참고하고 있습니다.
'Infra > OS' 카테고리의 다른 글
#2.3 System Structures - System Calls (0) | 2022.01.12 |
---|---|
Interprocess Communication(IPC) #3.4 Message-Passing 1 (0) | 2019.07.01 |
Interprocess Communication(IPC) #3.4 Shared Memory (0) | 2019.06.29 |
Interprocess Communication(IPC) #3.4 (1) | 2019.06.29 |
Operations on Processes #3.3 (0) | 2019.06.26 |