일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 자바
- Java
- 백준
- postgresql
- 스프링부트
- python
- CS지식
- Flutter
- backjoon
- JPA
- springboot
- Spring Security
- CS
- 스프링 부트 쇼핑몰 프로젝트 with JPA
- 파이썬
- 프로그래머스
- 자바스크립트
- 시큐리티
- javascript
- 데이터베이스
- spring
- DB
- Oracle
- 데이터
- 리눅스
- 네트워크
- 플러터
- 스프링
- baekjoon
- 자료구조
- Today
- Total
목록CS 지식/[운영체제] (4)
Jin's Dev Story
1. 스케줄링 조건 : 오버헤드 ↓ / 사용률 ↑ / 기아 현상 ↓ 목표 Batch System: 가능하면 많은 일을 수행. 시간(time) 보단 처리량(throughout)이 중요 Interactive System: 빠른 응답 시간. 적은 대기 시간. Real-time System: 기한(deadline) 맞추기. 2. 선점 / 비선점 스케줄링 선점 (preemptive) : OS가 CPU의 사용권을 선점할 수 있는 경우, 강제 회수하는 경우 (처리시간 예측 어려움) 비선점 (nonpreemptive) : 프로세스 종료 or I/O 등의 이벤트가 있을 때까지 실행 보장 (처리시간 예측 용이함) 3. 프로세스 상태 선점 스케줄링 : Interrupt, I/O or Event Completion, I/O ..
두 개 이상의 프로세스나 스레드가 서로 자원을 얻지 못해서 다음 처리를 하지 못하는 상태 무한히 다음 자원을 기다리게 되는 상태를 말함 시스템적으로 한정된 자원을 여러 곳에서 사용하려고 할 때 발생 데드락이 일어나는 경우 프로세스1과 2가 자원1, 2를 모두 얻어야 한다고 가정해보자 t1 : 프로세스1이 자원1을 얻음 / 프로세스2가 자원2를 얻음 t2 : 프로세스1은 자원2를 기다림 / 프로세스2는 자원1을 기다림 ⇒ 현재 서로 원하는 자원이 상대방에 할당되어 있어서 두 프로세스는 무한정 wait 상태에 빠짐 → 이것이 바로 DeadLock 멀티 프로그래밍 환경에서 한정된 자원을 얻기 위해 서로 경쟁하는 상황 발생 한 프로세스가 자원을 요청했을 때, 동시에 그 자원을 사용할 수 없는 상황이 발생할 수 ..
프로세스 프로그램을 메모리 상에서 실행 중인 작업 ⇒ 작업 중인 프로그램 스레드 프로세스 안에서 실행되는 여러 흐름 단위 기본적으로 프로세스마다 최소 1개의 스레드 소유(메인 스레드 포함) 프로세스는 각각 별도의 주소 공간 할당 (독립적) Code : 코드 자체를 구성하는 메모리 영역(프로그램 명령) Data : 전역 변수, 정적 변수, 배열 등 초기화 된 데이터는 data 영역에 저장 초기화 되지 않은 데이터는 bss 영역에 저장 .data : 전역 변수 또는 static 변수 등 프로그램이 사용하는 데이터를 저장 .BSS : 초기값 없는 전역 변수, static 변수가 저장 .rodata : const같은 상수 키워드 선언 된 변수나 문자열 상수가 저장 Heap : 동적 할당 시 사용 (new(), ..
운영 체제 사용자가 컴퓨터를 편리하고 효과적으로 사용할 수 있도록 환경을 제공하는 시스템 소프트웨어 종료 : Windows, Linux, UNIX, MS-DOS 등 운영체제의 역할 1. 프로세스 관리 프로세스, 스레드 스케줄링 동기화 IPC 통신 2. 저장장치 관리 메모리 관리 가상 메모리 파일 시스템 3. 네트워킹 TCP/IP 기타 프로토콜 4. 사용자 관리 계정 관리 접근권한 관리 5. 디바이스 드라이버 순차접근 장치 임의접근 장치 네트워크 장치