일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 운영체제
- 반복문
- 쿼리dsl
- 객체지향프로그래밍
- 브루트 포스
- 웹개발
- 면접
- ModelAttribute
- 스프링
- JPA
- 정처기
- 자바
- 프로그래머스
- 메서드
- Bean Validation
- 스프링MVC
- db
- 스프링 MVC
- Java
- programmers
- 코딩테스트
- 알고리즘
- 네트워크
- 백준
- 자바의 정석
- 검증
- 자료구조
- OS
- 코테
- 스파르타코딩
- Today
- Total
목록운영체제 (6)
개발일지

목차 1. 메모리 할당 (1) 메모리 할당이란? 시스템이 프로그램이나 프로세스에게 사용 가능한 메모리 공간을 할당하는 과정이다. 메모리 할당에는 연속 메모리 할당과 불연속 메모리 할당으로 나뉜다. (2) 연속 메모리 할당 방식 가변 분할 방식 : 프로세스마다 요구되는 메모리 크기에 맞춰서 메모리 할당 장점 : 프로세스를 한 덩어리로 처리하여 하나의 프로세스를 연속된 공간에 배치 단점 : 외부 단편화 발생 고정 분할 방식: 메모리를 고정된 크기로 나누고 프로세스를 할당 장점 : 일정한 크기로 나누어 관리하므로 메모리 관리가 수월함 단점 : 메모리가 미리 나뉘어 있어 융통성이 없고, 내부 단편화 발생 (3) 단편화란 무엇인가? 단편화는 연속 메모리 할당에서 발생하는 메모리 조각화로, 메모리가 일정한 크기의 ..

목차 동기화란? 운영체제 동기화는 여러 프로세스가 동시에 실행될 때 발생할 수 있는 문제를 해결하고 시스템의 안정성과 일관성을 유지하기 위해 필요하다. 사전적 의미 : 프로세스들의 수행 시기를 맞추는 것 구체적인 정의 1️⃣ 실행 순서 제어를 위한 동기화 : 프로세스를 올바른 순서대로 실행하기 2️⃣ 상호 배제를 위한 동기화 : 동시에 접근해서는 안 되는 자원에 하나의 프로세스만 접근하게 하기 1. 실행 순서 제어를 위한 동기화 : reader writer problem Writer : Book.txt 파일에 값을 저장하는 프로세스 Reader : Book.txt 파일에 저장된 값을 읽어들이는 프로세스 여러 프로세스가 공유 데이터를 동시에 읽을 수는 있지만, 데이터를 쓰는 경우에는 동시에 접근해서는 안된..

목차 스케쥴러란? 한정적인 메모리에 여러 프로세스가 효율적으로 사용할 수 있도록 다음 실행 시간에 실행할 수 있는 프로세스 중에 하나를 선택하는 역할이다. 프로세스는 일생 동안 다양한 스케줄링 큐 사이를 이동하는데, 프로세스를 스케줄링하기 위한 Queue에는 세 가지 종류가 존재한다. 1. 작업 큐(Job Queue) : 시스템 안의 모든 프로세스들로 구성 2. 준비 큐(ready queue) : 메인 메모리에 존재하며, 준비 완료 상태에서 실행을 대기하는 프로세스들로 구성 3. 장치 대기 큐(device queue) : 특정 입/출력장치를 대기하는 프로세스들의 리스트들로 구성 스케쥴러의 종류 단기 스케줄러(CPU Scheduler) : CPU와 메모리 사이를 담당하는 스케줄러 실행 준비가 완료되어 준비..
목차 프로세싱의 발전 과정 단일 프로세스 한번에 하나의 프로그램만을 실행할 수 있어서, 또 다른 프로그램을 실행하고 싶다면 현재 프로그램을 종료해야 했다. CPU 사용률이 효율적이지 못했는데, 프로그램 실행 도중 I/O(입출력) 작업과 같은 일이 생기게 되면 CPU는 프로세스를 멈추고 그대로 놀아버리기 때문이다. 멀티 프로그래밍(Multi Programming) 단일 프로세스를 해결하기 위해, 여러개의 프로그램을 메모리에 올려놓고 하나의 CPU에서 번갈아가며 동시에 실행시키는 방안을 첨가했다. 멀티 프로그래밍은 여러개의 프로그램이 동시에 실행된다는 의미로서, CPU 사용률을 극대화 시키는게 목적을 두었다. 그러나, 어느 한 프로그램이 CPU 사용 기간이 길어지면, 다른 프로세스는 계속 대기를 해야한다는 ..

목차 프로세스 ☝🏻실행중인 프로그램을 프로세스라고 하며, 프로그램은 실행되기 전까지는 그저 보조기억장치에 있는 데이터 덩어리일 뿐이지만, 보조 기억 장치에 저장된 프로그램을 메모리에 적재하고 실행하는 순간 그 프로그램은 프로세스가 된다. 프로세스 제어 블록(PCB) - 운영체제는 빠르게 번갈아 수행되는 프로세스의 실행 순서를 관리하고, 프로세스에 CPU를 비롯한 자원을 배분한다. 이를 위해 운영체제는 프로세스 제어 블록을 이용한다. - 프로세스 제어 블록은 프로세스와 관련된 정보를 저장하는 자료구조이며, 프로세스를 식별하기 위한 필요한 정보들이 저장된다. - 프로세스 제어 블록(Process Control Block, PCB)은 운영체제가 각 프로세스를 관리하고 추적하기 위한 중요한 자료구조이다. 문맥 ..