본문 바로가기

Computer Science/OperatingSystem

[OS] System Structures

반응형

Operatin-System Service

Operation system은 프로그램이 실행될 수 있는 환경을 제공한다.

 

OS는 프로그램과 프로그램을 사용하는 user에게 특정한 service를 제공한다.

 

  • User interface
    • 대부분의 os시스템은 user interface(UI)가 존재한다.
    • command-line interface(CLI) : text commands를 이용하여 명령을 하는 ui
    • batch interface : 해당 명령을 제어하기위한 명령 및 지시문이 파일에 입력되고 해당 파일이 실행됩니다.
    • graphical user interface(GUI)
    • 인터페이스는 I/O를 관리하는 장치, 메뉴선택하는 장치, 문자를 입력하는 키보드 결정을 하는 등의 장치를 가리키는 윈도우 시스템이다.
  • Program execution
    • 시스템은 프로그램을 메모리로 로드할 수 있고 프로그램을 실행할 수 있어야 한다.
    • 프로그램을 종료할 수 있어야 한다.(에러가 존재할 때도 마찬가지 이다.)
  • I/O operations
    • 실행되는 프로그램은 파일이나 I/O device를 포함하여 I/O가 필요한 경우가 있다.
    • 하지만 유저는 효율성과 보안적인 문제로 직접적인 I/O devices를 컨트롤 할 수 없으므로 operating system은  I/O를 의미하는 작업을 제공해 주어야만 한다.
  • File-system manipulation
    • 프로그램은 명백하게 파일, 폴더를 읽고 쓰고 생성하고 삭제하는 것이 필요하다.
    • 어떤 os에서는 권한관리기능을 포함하고 있다. 
    • 대부분의 많은 os는 다양한 파일 시스템을 제공한다.
  • Communications
    • 한 프로세스가 다른 프로세스와 정보를 교환할 때 많은 상황들이 존재한다.
    • 같은 컴퓨터 내의 프로세스가 통신할때도 있고 다른컴퓨터와 컴퓨터 네트워크를 통해서 통신을 할 때도 있다.
    • 이러한 통신들은 shared memory를 통해서 이루어 진다.
    • 공유메모리(shared memory)에서 두개 이상의 프로세스들은 메모리 구간을 나누기 위해서 읽고 쓰기를 하고 또한 메시지를 전송한다. 그 메시지에서 미리 지정된 포멧정보의 패킷은 OS시스템에 의해서 프로세스의 사이를 이동한다.
  • Error detection
    • os시스템은 에러를 지속적으로 발견하고 고칠 수 있어야 한다.
    • 때때로 에러를 유발하는 프로세서를 종료할 수있어야 하고 에러코드를 반환할 수 있어야 한다.

 

다음은 시스템이 효과적으로 작동하기 위한 기능들이다.

 

  • Resource allocation
    • 많은 유저 또는 작업이 같은 시간에 진행되고 있을때 OS는 자원을 각각에게 할당해 주어야 한다.
    • OS는 CPU cycle, 메인메모리, 파일저장소 등 여러가지 자원들을 할당해 줄 수 있다.
  • Accounting
    • 우리는 어떤 유저가 얼마나 그리고 어떤 종류의 resources를 사용하는지 추적하기를 원한다.
  • Protection and security
    • 정보 저장매체 네트워크 컴퓨터 시스템의 관리자는 그 정보를 이용하기를 원한다.
    • Protection는 시스템 자원에 대한 모든 접근을 제어해야 한다.
    • 보안은 유저들의 권한을 확인하는 것으로 부터 시작한다.

 

 

 

 

반응형

'Computer Science > OperatingSystem' 카테고리의 다른 글

[OS] System calls  (0) 2020.07.06