[OS] Operating System Services

2020. 6. 7. 19:22OS


For Users


Interface

하드웨어 인터페이스

컴퓨터와 컴퓨터 즉, 하드웨어 간의 통신을 위한 인터페이스

소프트웨어 인터페이스

소프트웨어 간의 통신을 위해 메시지를 달하는 방식 등이 결정된 것

사용자 인터페이스(User Interface)

컴퓨터와 사용자 사이의 상호작용 정보 교환을 위한 인터페이스
CLI(Command-Line Interface)
 - cmd 창에서처럼 command로 조작
Batch Interface
 - 일련의 명령어들이 적혀있는 파일을 처음부터 끝까지 연속적으로 실행
 - 오류가 있더라도, 전체 파일의 실행이 끝나야 알 수 있음
GUI(Graphical User Interface)
 - 현재의 window 환경처럼 마우스 클릭으로 조작

 

프로그램 실행

프로그램을 로드하고, 실행

I/O 작업

파일 또는 I/O 장치에 접근할 수 있는 수단을 제공

파일 시스템 조작

파일과 폴더를 읽고 쓸 수 있다.
파일 생성, 삭제, 검색이 가능하다.
파일들의 정보와 권한을 관리할 수 있다. 

커뮤니케이션

공유 메모리 또는 메시지 전달을 가능하게 해 준다.

오류 감지

다양한 유형의 오류에 대해 OS는 일관성을 유지하여 적절한 조치를 취해야 합니다. 

for Efficiency


자원 할당(Resource Allocation)

여러 가지 자원들과 job(프로세스) 관리

Accounting  

하드웨어를 어떻게 사용하는지 공지
어느 사용자가 어떤 컴퓨터 리소스를 얼마나 많이 사용하는지

Protection

컴퓨터 하드웨어가 어떻게 접근되는지 제어

Security

사용자 인증 접근 권한 제어

Interrupt


Hardware Interrupt

하드웨어 I/O 장치에 의해 발생되는 인터럽트

Trap(Software Interrupt)

소프트웨어에서 발생한 이벤트를 커널에 알림

 

Exception
 1. 0으로 나누기
 2. 잘못된 코드
 3. 잘못된 메모리 접근
System call

System call


OS에게 서비스를 요청

 

응용프로그램에서 시스템 콜이 포함된 라이브러리를 간접적으로 호출

why?

서로 다른 프로그램에서 하나로 가능
프로그래밍이 편함

각각 숫자에 Index table에 저장된 시스템 콜을 호출

why?

효율성

 

시스템 콜을 호출하는 방법

프로그램 내부에 있는 라이브러리 함수를 통해 시스템 콜을 호출, 커널 내의 시스템 콜 테이블에서 시스템 콜 번호를 찾아 시스템 콜을 호출하여 실행하게 된다.

 


시스템 콜 타입


프로세스 관리

End, abort, create, terminate, wait, event 등

파일 관리

Create, open, read, write 등

장치 관리

Read, write, get device attributes

정보 유지 관리

Get time, date, process id 등

커뮤니케이션

Create, delete communication connection
send or receive message

 

'OS' 카테고리의 다른 글

[OS] Operating System Structure  (0) 2020.06.07
[OS] Multiprogramming  (0) 2020.06.07
[OS] 컴퓨터 하드웨어  (0) 2020.06.07
[OS] 운영체제(Operating System :: OS)란 무엇인가  (0) 2020.06.07