* 사용자 관점
1. user interface
- 커맨드라인 : 사용자가 직접 명령어를 입력
shell에 코드 삽입 -> shell이 방대해짐, 코드를 별도 파일에 저장 후 그 파일을 커맨드에서 실행
- GUI : 사용자가 편리하게 이용하게 해줌
현재 대부분의 os가 사용.
윈도우, 유닉스, 리눅스(GUI 개발을 위한 프로젝트 KDE)
- 배치 인터페이스 : 일련의 명령어를 모은 파일, 패일 수행시 명령어들 연속적 시행
2. 프로그램 수행 : 로딩과 수행 순서를 결정
3. I/O 연산 : 하드웨어 관리, 파일과 IO장치에 접근하는 인터페이스 제공
4. 파일시스템 조작 : 파일 시스템 접근, 읽고 쓰는 파일을 생성하고 삭제하고 검색
5. 커뮤니케이션 : 프로세스 간 커뮤니케이션 지원
6. 에러탐지 : 하드웨어 접근 시 각종 에러나 접근 권한이 없는 자원에 접근할 때 발생하는 에러
*효율성
- 리소스 할당 : cpu, 메모리, 입출력 장치, 스토리지 등 다양한 형태의 리소스를 효과적으로 할당
멀티프로그래밍으로 동시에 여러 프로그램 수행. 각 프로그램에 리소스를 어떻게 할당할지에 중점을 둠
- accounting : 하드웨어를 어떻게 사용하는지 알려줌
리소스를, 메모리를 얼마나 어디에 사용하는 지에 대한 내용
- 하드웨어에 어떻게 접근되는지를 제어
- 사용자 접근 권한 제어
- 멀웨어 방지
'CS > 오퍼레이팅 시스템' 카테고리의 다른 글
8. 오퍼레이팅 시스템 설계와 구현 (0) | 2020.04.08 |
---|---|
7. 시스템콜 (0) | 2020.04.08 |
5. 유저와 커널 (0) | 2020.04.08 |
4. 멀티프로그래밍 : 멀티프로세서, 멀티코어 (0) | 2020.04.07 |
3. 스토리지 구조 Storage Structure (0) | 2020.04.07 |