Mutual Exclusion Solutions SW solutions Dekker’s algorithm (Peterson’s algorithm) Dijkstra’s algorithm, Knuth’s algorithm, Eisenberg and McGuire’s algorithm, Lamport’s algorithm HW solution TestAndSet (TAS) instruction OS supported SW solution Spinlock Semaphore Eventcount/sequencer Language-Level solution Monitor Eventcount/Sequencer 은행의 번호표와 비슷한 개념 Sequencer 정수형 변수 생성시 0으로 초기화, 감소하지 않음 발생 사건들의..
Mutual Exclusion Solutions SW solutions Dekker’s algorithm (Peterson’s algorithm) Dijkstra’s algorithm, Knuth’s algorithm, Eisenberg and McGuire’s algorithm, Lamport’s algorithm HW solution TestAndSet (TAS) instruction OS supported SW solution Spinlock Semaphore Eventcount/sequencer Language-Level solution Monitor OS supported SW solution Spinlock 정수 변수 초기화, P(), V() 연산으로만 접근 가능 위 연산들은 indivisib..
Mutual Exclusion Solutions SW solutions Dekker’s algorithm (Peterson’s algorithm) Dijkstra’s algorithm, Knuth’s algorithm, Eisenberg and McGuire’s algorithm, Lamport’s algorithm HW solution TestAndSet (TAS) instruction OS supported SW solution Spinlock Semaphore Eventcount/sequencer Language-Level solution Monitor SW solutions Dekker’s Algorithm Two process ME을 보장하는 최초의 알고리즘 flag : CS에 들어갈지 말지, ..
Process Synchronization (동기화) 다중 프로그래밍 시스템 여러 개의 프로세스들이 존재 프로세스들은 서로 독립적으로 동작 공유 자원 또는 데이터가 있을 때, 문제 발생 가능 -> 공유된 자원, 데이터를 수정하거나 생성하는 등의 경우에 문제 발생 가능성 동기화 (Synchronization) 프로세스 들이 서로 동작을 맞추는 것 프로세스 들이 서로 정보를 공유 하는 것 Asynchronous and Concurrent P’s 비동기적(Asynchronous) 프로세스들이 서로에 대해 모름, 각각 동작 병행적 (Concurrent) 여러 개의 프로세스들이 동시에 시스템에 존재 병행 수행중인 비동기적 프로세스들이 공유 자원에 동시 접근 할 때 문제가 발생 할 수 있음 Terminologies..
Basic Scheduling algorithms FCFS (First-Come-First-Service) RR (Round-Robin) SPN (Shortest-Process-Next) SRTN (Shortest Remaining Time Next) HRRN (High-Response-Ratio-Next) MLQ (Multi-level Queue) MFQ (Multi-level Feedback Queue) FCFS (First-Come-First-Service) Non-preemptive scheduling 스케줄링 기준 (Criteria) 도착 시간 (ready queue 기준) 먼저 도착한 프로세스를 먼저 처리 자원을 효율적으로 사용 가능 High resource utilization 불필요한 스케..
목차 멀티프로그래밍 (멀티테스킹) 스케줄링 개념 • 목적 • 성능 지표 (index) • CPU burst VS I/O burst • 스케줄링 기준(Criteria) 스케줄링 레벨 • Long-term, Mid-term, Short-term 스케줄링 정책 • Preemptive/non-preemptive • Priority 다중프로그래밍 (Multi-programming) 여러개의 프로세스가 시스템 내 존재 자원을 할당 할 프로세스를 선택 해야 함 : 스케줄링(Scheduling) 자원 관리 시간 분할 (time sharing) 관리 하나의 자원을 여러 스레드들이 번갈아 가며 사용 예) 프로세서 (Processor) 프로세스 스케줄링 (Process scheduling) -> 프로세서 사용시간을 프로세스..
스레드(Thread)의 개념 프로세스는 자원을 할당 받아서 그 1. 자원을 2. 제어하여 작업을 한다. 그 중 제어하는 부분을 스레드 라고 한다. 프로세스는 여러 자원을 할당 받아 제어하므로 하나의 프로세스에 여러 스레드가 있다. 한 프로세스 안에 자원을 공유하는 스레드가 여러개가 존재할 수 있다. 리소스(자원) 코드 : 프로그램 코드, 프로그램 카운터(어디를 실행 중인지 가리키고 있는 정보)의 정보를 가지고 자원에 접근 전역 데이터 : 작업을 하기위해 사용할 데이터 힙(Heap) : 프로세스가 사용하는 메모리공간(전역적으로 사용하는 데이터) 제어 제어정보 : PC(어디를 실행하는지), 상태정보, SP(stack pointer) 지역데이터 : 제어를 위해 사용 스택(stack) : 지역데이터가 저장되는 ..
인터럽트(Interrupt) 예상치 못한, 외부에서 발생한 이벤트 (Unexpected, external events ) 인터럽트의 종류 I/O interrupt -> 마우스를 클릭, 키보드를 입력 등등 Clock interrupt -> CPU가 동작할 때 Clock발생 할 때 Console interrupt -> 콘솔창에 입력할 때 발생 Program check interrupt -> 프로그램에 문제 발생 시 Machine check interrupt -> 하드웨어에 문제 발생 시 Inter-process interrupt -> 다른 프로세스에 의한 인터럽트 System call interrupt 인터럽트 처리 과정 인터럽트 발생 시 커널이 프로세스를 중단 발생한 인터럽트를 처리 인터럽트 발생 장소 및..
- Total
- Today
- Yesterday
- Replacement Strategies
- I/O Mechanisms
- aop
- File Protection
- 하둡
- jdbc
- Free space management
- RAID Architecture
- gradle
- 빅데이터
- Spring
- oracle
- Flume
- Allocation methods
- SPARK
- vmware
- SQL
- HDFS
- Disk Scheduling
- linux
- I/O Services of OS
- mapreduce
- JSON
- Disk System
- Java
- hadoop
- Variable allocation
- springboot
- 빅데이터 플랫폼
- maven
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |