분류 전체보기

· CS/OS
어떻게 하면 상호배제가 잘 작동하는 알고리즘을 만들 수 있을까? 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 은행의 번호표와 비슷한 개념 앞..
· CS/OS
어떻게 하면 상호배제가 잘 작동하는 알고리즘을 만들 수 있을까? 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, HW의 솔루션 과정들을 통해 OS에서 해결하는 과정..
문제 https://www.acmicpc.net/problem/7568 7568번: 덩치 우리는 사람의 덩치를 키와 몸무게, 이 두 개의 값으로 표현하여 그 등수를 매겨보려고 한다. 어떤 사람의 몸무게가 x kg이고 키가 y cm라면 이 사람의 덩치는 (x, y)로 표시된다. 두 사람 A 와 B의 덩 www.acmicpc.net 문제를 잘못 접근했다. 몸무게가 큰 순서대로 sort로 정렬하고 0번째 리스트 원소와 1번째 리스트 원소를 비교 1번째 리스트 원소와 2번째 리스트 비교... 반복하여 해당 인덱스에 rank를 추가하였다. [[88, 186, 1], [60, 175, 2], [58, 183, 2], [55, 185, 2], [46, 155, 5]] 출력을 구하였지만 문제에서 원하는 출력이 아니니까..
그래프를 탐색하는 방법인 깊이우선 탐색(DFS), 너비 우선 탐색(BFS)를 알아보자 깊이 우선 탐색(DFS) 한 지점을 골라서 팔 수 있을 때까지 계속해서 깊게 파다가 아무리 땅을 파도 물이 나오지 않으면, 밖으로 나와 다른 지점을 골라서 다시 깊게 땅을 파는 방법 즉, 루트 노드나 임의 로드에서 출발하여 최대로 진입할 수 있는 깊이까지 탐색하고 다시 돌아와 다른 노드로 같은 방법으로 탐색하는 방법. DFS는 방문한 노드들을 스택 자료구조를 통해 방문했는지 확인한다. DFS는 탐색시 해당 노드를 방문했는지 여부를 검사해야 한다. 이를 검사하지 않으면 계속 탐색하게 되어 무한 루프에 빠지게 된다 스택(Iterative) 또는 재귀함수(Recursive)로 표현함. 재귀함수로 간결하게 구현 가능 깊이 우선..
· CS/OS
어떻게 하면 상호배제가 잘 작동하는 알고리즘을 만들 수 있을까? 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 앞서 소프트웨어를 통한 ME 솔루션은 비효율적이고 구현이 복잡하다는 단점..
· CS/OS
어떻게 하면 상호배제가 잘 작동하는 알고리즘을 만들 수 있을까? 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 Dekker’s Algorithm Two process일 때 ME(상호배..
· CS/OS
Process Synchronization (동기화) 다중 프로그래밍 시스템 운영체제에는 여러 개의 프로세스들이 존재 => 이러한 시스템을 다중 프로그래밍 시스템이다. 프로세스들은 서로 독립적으로 동작 (동시에 동작함) 공유 자원 또는 데이터가 있을 때 문제 발생 가능 예를들어 A가 어떠한 행동을 하려고 할 때 B가 A가 하려던 행동을 하면 서도 충돌이 발생함 이를 맞추기 위해 동기화 라는 것이 필요함. 동기화 (Synchronization) 프로세스 들이 서로 동작을 맞추는 것 프로세스 들이 서로 정보를 공유 하는 것 비동기적 (Asyncjronous) 프로세스들이 서로에 대해 모름 병행적 (Concurrent) 여러 개의 프로세스들이 동시에 시스템에 존재 병행 수행중인 비동기적 프로세스들이 공유 자원..
· CS/OS
목차 더보기 스케줄링의 목적 스케줄링 기준 및 단계 스케줄링 정책 기본 스케줄링 알고리즘들 Case study 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) BT 예측문제를 개선한 방식 MLQ (Multi level Queue) MFQ (Multi level Feedback Queue) 앞서 효율성을 고려한 방식의 문제점은 BT를 예측해야 하는데 힘들다 그래서 효율성을 고려한 방식과 비슷한 효과를 내면서..
· CS/OS
목차 더보기 스케줄링의 목적 스케줄링 기준 및 단계 스케줄링 정책 기본 스케줄링 알고리즘들 Case study 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) BT예측문제를 개선한 방식 MLQ (Multi level Queue) MFQ (Multi level Feedback Queue) SPN (Shortest Process Next) FCFS에서 실행시간이 긴 프로세스로 인해 짧은 시간의 프로세스들이 오..
문제 https://www.acmicpc.net/problem/1715 1715번: 카드 정렬하기 정렬된 두 묶음의 숫자 카드가 있다고 하자. 각 묶음의 카드의 수를 A, B라 하면 보통 두 묶음을 합쳐서 하나로 만드는 데에는 A+B 번의 비교를 해야 한다. 이를테면, 20장의 숫자 카드 묶음과 30장 www.acmicpc.net 코드 import sys import heapq n = int(sys.stdin.readline()) card = [] answer = 0 for _ in range(n): heapq.heappush(card, int(sys.stdin.readline())) if len(card) == 1: print(0) else: while len(card) > 1: left = heapq..
White Asher
'분류 전체보기' 카테고리의 글 목록 (14 Page)