일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- AWS Spring MySQL Redis
- 스프링 HTTP 통신
- ajax 장점
- http 변화
- php 통신구조
- http 버전별 단점
- 데이터베이스 설계 순서
- ajax 통신
- jwt 특징
- Test NullPointerException
- 컬렉션 배열 변환
- Java 로드맵
- jwt 탄생배경
- 배열 컬렉션 변환
- 스프링 데이터 전달
- 주요 네트워크 종류
- 데이터베이스 언어 종류
- AWS EC2 Spring 서버
- ajax 특징
- 테스트 필드주입 Null
- Java Roadmap
- 네트워크 구성 요소
- mod_php vs php-fpm
- php 통신
- 화살표 함수 this
- 스프링 값 받아오기
- ajax 단점
- php 통신흐름
- http 버전별 개선점
- unknown database
- Today
- Total
zkvn99
[운영체제] 운영체제란? 본문
운영체제란 ?
컴퓨터 시스템의 자원들을 효율적으로 관리하며, 사용자가 컴퓨터를 편리하고 효과적으로 사용할 수 있도록 환경을 제공하는
시스템 소프트웨어이며, 컴퓨터를 사용하면서 실행한 모든 프로그램은 운영체제에서 관리하고 제어한다.
위에서 말하는 자원은 시스템에서 사용할 수 있는 CPU, 주기억장치, 보조기억장치, 파일 및 정보 등 다양한 것을 의미한다
운영체제의 기능
운영체제는 위와 같은 것을 지원하기 위해서 사용자의 하드웨어, 시스템 리소스를 제어하는데
먼저, 하드웨어를 정리는
- 프로세서 관리 : 스케줄링(CPU 측면)
- 메모리 관리 : 메모리 할당 및 회수(RAM 측면)
- 입출력 관리 : 입출력 장치와의 상호작용 관리
1. 입출력 요청(사용자 프로세스)
2. 시스템 호출(이전 요청이 운영체제로 전달될 때 사용되는 인터페이스)
3. 디바이스 드라이버 호출(해당 입출력 장치에 대응하는 디바이스 드라이버 호출, 입출력 장치와 상호 작용하는 역할)
4. 입출력 작업 대기열(디바이스 드라이버가 받은 입출력 요청은 대기열[Queue]에 저장, 동시에 들어올 수 있으므로 대기열을 통해 순차적으로 처리)
5. 인터럽트 처리(입출력 작업이 완료되면, 해당 입출력 장치는 하드웨어 인터럽트를 발생 - CPU에게 해당 작업이 완료되었음을 알리는 신호)
6. 운영체제의 처리(운영체제는 인터럽트를 수신하고, 해당 입출력 작업이 완료되었다는 신호를 확인 - 결과를 적절하게 처리하고, 요청한 프로세스에게 결과를 전달)
7. 사용자 프로세스의 진행(입출력 작업이 완료되면, 프로세스는 결과를 받아서 작업을 계속 진행 - 결과는 메모리에 저장 혹은 다른 연산에 사용, 사용자에게 출력되는 등 다양한 방식으로 처리)
현대의 운영체제는 다중 프로세싱, 다중 스레딩 등을 지원하여 여러 작업들이 동시에 실행 가능
다음으로, 시스템 리소스 정리는
- 프로세스 관리 : 스케줄링(프로세스 측면)
- 메모리 관리 : 페이징, 세그멘테이션
- 파일 시스템 관리 : 파일 할당 및 디렉터리 관리(생성, 삭제, 복사)
- 네트워크 관리 : 네트워크 프로토콜 관리 및 라우팅
- 디스크 관리 : 디스크 스케줄링, 조각화
운영체제의 역할
운영체제는 사용자를 위한 역할과, 하드웨어를 위한 역할로 나눌 수 있다
사용자를 위한 역할로는 사용자가 컴퓨터 시스템을 편리하게 사용할 수 있는 인터페이스를 제공
ex) GUI, CLI
하드웨어를 위한 역할로는 각종 하드웨어를 관리하고 컴퓨터 시스템 내의 자원을 효율적으로 관리하는 것
ex) 장치 드라이버 제공, 하드웨어 추상화
운영체제의 목적
운영체제의 주요 목적은 컴퓨터 시스템의 자원들을 효율적으로 관리하고
프로세스들이 원할하게 실행되며 사용자에게 편의성 제공하는 것
운영체제의 성능 평가
- 처리 능력(Througput) 향상 : 일정 시간내에 시스템이 처리하는 일의 양
- 반환 시간(Turn Around Time) 단축 : 시스템에 작업을 의뢰한 시간부터 처리 완료될 때까지 걸린 시간
- 사용 가능도(Availability) 향상 : 시스템을 사용할 필요가 있을 때 즉시 사용 가능한 정도
- 신뢰도(Reliability) 향상 : 시스템이 주어진 문제를 정확하게 해결하는 정도
운영체제의 운용 기법
'Computer Science > 운영체제' 카테고리의 다른 글
[운영체제] Memory (0) | 2023.09.13 |
---|---|
[운영체제] CPU (0) | 2023.09.10 |