운영체제

운영체제 서비스

  • GUI (Graphic User Interface) : 도스창이 아닌 그래픽화면으로 사용자가 편하게 컴퓨터를 사용하게 한다.
  • CLI (Command Line Interface) : 명령기반 인터페이스
  • 터치스크린
  • 프로그램 실행
    : 시스템은 반드시 메모리에 적재하고, 실행, 구동 종료하게함
  • I/O 수행
    : 실행 프로그램에 입출력 지원
  • 파일시스템 조작
    : 파일 및 디렉토리 읽기/쓰기/생성/삭제 지원. 사용자 권한 관리
  • 통신
    : 동일컴퓨터 또는 다른 컴퓨터 시스템의 프로세스 사이의 통신을 가능하게 함
  • 리소스 할당
    : 다수개의 사용자 혹은 일을 동시에 처리할때 각각의 리소스에 자원을 적당히 할당
  • 로깅
  • 보호와 보안
    : 다수의 사용자나 네트워크에 구성된 시스템이 동시 처리시 서로 방해되지 않도록 함

시스템 콜 : 응용프로그램에서 운영체제에게 어떠한 기능 (시스템 자원)을 수행해달라고 하는 하나의 수단

시스템 콜이 왜 필요할까?
사용자와 운영체제는 시스템 자원을 공유해. 근데 사용자가 메모리 내부까지 직접적 접근하게 되면 보안상으로 문제가된다. 그래서 직접 수행하는게 아닌 ~~하게 해줘 하는 시스템 콜을 수행하게된다.
즉, 시스템콜은 커널영역의 기능을 사용자가 사용할 수 있게 하는 수단!
-> 프로세스가 하드웨어에 접근해서 필요한 기능을 수행

cp in.txt out.txt

유저가 명령어를 때리면 아래 시스템콜 시퀀스를 수행. 시스템 콜은 유저모드에서 받은 명령어를 커널모드에서 실행하게 한다.
시스템콜 시퀀스 : inputfile, outfile의 이름을 받고, inputfile을 열고, outputfile을 생성한다. inputfile을 읽고 outfile에 쓰고를 반복. 다 읽으면 스크린에 다 메세지를 띄우고 시스템 콜 종료

시스템콜 유형

  • 프로세스 제어 : 프로세스 생성,종료. 로드,실행. 프로세스 속성 가져오기, 프로세스 속성 설정. Wait 이벤트, Signal 이벤트. 메모리 할당 및 해제
  • 파일 관리 : 파일 생성,삭제. 열기,닫기. 읽기,쓰기,Reposition. 파일 속성 값 확인, 지정
  • 장치 관리 : 장치 요청,해제. 읽기,쓰기,재배치. 장치 속성 가져오기, 설정. 논리적인 장치 연결 및 분리
  • 정보 유지 : 시스템 날짜, 시스템 데이터, 프로세스, 파일 및 장치 속성 가져오기 및 설정
  • 통신 : 통신 연결 설정,삭제. 메시지 보내기,받기. 전송상태 정보. 원격장치 연결 또는 분리
  • 보호 : 파일 권한 얻기 및 설정

환급 2일차도 완료! 회사갔다가 저녁도 못먹고 바로 영어학원갔다가 집에와서 바로 인강듣고 정리.. 오늘너무 힘든 Day~ 하지만 한달뒤에 뿌듯할 모습을 생각하니 조금 힘이난다..ㅎ 화이팅! 배고파...

https://bit.ly/3FVdhDa
본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성되었습니다.

profile
Devops, AWS에 관심있어요.

0개의 댓글