본 설명은 책 “그림으로 배우는 구조와 원리 운영체제 개정 3판”를 읽으며 제 나름대로 해석하고 정리해 보았습니다.😉 교착 상태 탐지 알고리즘 교착 상태 탐지 알고리즘은 교착 상태 회복을 위한 알고리즘으로 교착상태에 대해 더 자세히 알고 싶다면 교착상태란? 링크를 참고하자. 교착 상태 탐지 알고리즘의 자료구조 교착 상태 탐지 알고리즘은 쇼사니...
[OS] 은행원 알고리즘 (예시문제 까지)
본 설명은 책 “그림으로 배우는 구조와 원리 운영체제 개정 3판”를 읽으며 제 나름대로 해석하고 정리해 보았습니다.😉 은행원 알고리즘 은행가(은행원) 알고리즘은 자원의 할당 허용 여부를 결정하기 전에 미리 결정된 모든 자원의 최대 가능한 할당량을 시뮬레이션하여 안전 여부를 검사한다. 그런 다음 대기 중인 다른 모든 활동의 교착 상태 가능성을 조사하...
[OS] 교착상태 해결 방법 예방, 회피, 탐지
교착 상태 해결 방법 본 설명은 책 “그림으로 배우는 구조와 원리 운영체제 개정 3판”를 읽으며 제 나름대로 해석하고 정리해 보았습니다.😉 교착 상태 문제를 해결하는 방법은 크게 네가지이다. 예방 (Prevention) : 교착 상태가 생길 조건을 없애는 것 (4가지 조건 중 하나를 부정) 회피 (Avoidance) : 교착 상태의 발생...
[Web] REST의 특징과 RESTful API
RESTful API 이전 포스트에서 REST API란 무엇인지에 대해 알아보았습니다. 오늘은 REST의 특징 그리고 RESTful API에 대해 알아보겠습니다. REST의 특징 REST의 특징은 총 6개로 Uniform Interface Stateless Caching Self-descriptiveness Client-Se...
[Web] REST API 란? ( GET과 POST의 차이 )
REST API 탄생 배경 2000년에 로이 필딩(Roy Fielding)은 UC 어바인에서 “Architectural Styles and the Design of Network-based Software Architectures”라는 제목의 2000년 박사 학위 논문에 REST를 정의하였다. 그는 1996년부터 1999년까지 HTTP 1.0의 기존...
[Algorithm] 정렬 알고리즘 (Bubble Sort, Selection Sort, Insertion sort, Counting sort, Merge Sort, Quick sort, Python Sort) 기본 개념과 Python 코드
정렬알고리즘 (Python 코드까지) Bubble Sort, Selection Sort, Insertion sort, Counting sort, Merge Sort, Quick sort, Python Sort 의 기본적인 개념과 Python 코드 그리고 시간복잡도까지 알아보자. 먼저 설명에 앞서, 각 정렬별 시간복잡도를 살펴보면 아래와 같다. ...
[백준] #20061 모노미노도미노2 Python (파이썬)
모노미노도미노2 문제링크 https://www.acmicpc.net/problem/20061 코드 import sys sys.stdin = open("input.txt",'r') n = int(input()) # 빨간 보드 red_green = [[0]*4 for _ in range(10)] # 초록 보드 # 파란 보드 red_blue = ...
[백준] #20055 컨베이어 벨트 위의 로봇 Python (파이썬)
컨베이어 벨트 위의 로봇 문제링크 https://www.acmicpc.net/problem/20055 코드 import sys from collections import deque sys.stdin = open("input.txt",'r') n,k = map(int,input().split()) arr = deque(list(map(int,in...
[백준] #19237 어른 상어 Python (파이썬)
어른 상어 문제링크 https://www.acmicpc.net/problem/19237 풀이 import sys sys.stdin = open('input.txt','r') from copy import deepcopy n, m, k = map(int,input().split()) # 상어의 번호를 담느 격자 board = [[int(x) fo...
[OS] 교착 상태(deadlock)의 개념과 발생 원인
01 교착 상태의 개념과 발생 원인 본 설명은 책 “그림으로 배우는 구조와 원리 운영체제 개정 3판”를 읽으며 제 나름대로 해석하고 정리해 보았습니다. 1. 교착 상태의 개념 다중 프로그래밍 시스템에서는 프로세스가 결코 일어나지 않을 사건을 기다리는 상태가 되면 교착상태(deadlock)에 빠졌다고 말한다. 만약 이 교착상태가 일어났음에도 운영체...