2019년 01월 01일 스케줄러 구분 ( 정책, policy 라고도 함 ) - FIFO(FCFS), SJF, Priority-based 는 어떤 프로세스를 먼저 실행 시킬지에 대한 알고리즘 + (비선점형 스케줄링에 가까움)- RoundRobin 은 시분할 시스템을 위한 기본 알고리즘 + (선점형 스케줄러) 여러 알고리즘을 조합하여 스케줄러를 만든다ex) 1. 시분활 시스템 2. 프로세스 상태 고려 3. 정적 우선 순위 기반 4. 선점형 * 가볍게 듣기렉?: 마우스/ 키보드 반응이 느린 경우?>스케줄러가 해결해야하는 이슈!>다양하고 복잡한 스케쥴링 알고리즘 필요- 리눅스 스케쥴러: O(1), CFS (스케줄링 알고리즘 이름)와 같이 다양한 방식으로 변경 시도 중-인터렉티브,IO,CPU 중심 프로세스로 미..
군대에서 한것
2018년 12월 25일 선점형과 비선점형 스케줄러 > 선점형 스케줄러 (Preemptive Scheduling) : 하나의 프로세스가 다른 프로세스 대신에 프로세서(CPU)를 차지할 수 있음> 비선점형 스케줄러 (Non-preemptive Scheduling) : 하나의 프로세스가 끝나지 않으면 다른 프로세스는 CPU를 사용할 수 없음+ 시분할 시스템이 안됨+ 프로세스가 상태를 자체적으로 wait 또는 end 로 들어가지 않으면 다른 프로세스를 실행 시킬 수 없음+ 과거에 기본이였지만 후에 선점형 스케줄러를 주로 씀, 프로세스를 중단할 때 여러가지 고려해야할게 많아서 힘들었음 선점형과 비선점형 스케줄러 차이> 비선점형 : 프로세스가 자발적으로 blocking 상태로 들어가거나, 실행이 끝났을때 (end..
2018년 12월 21일 * Cpu IDLE 상태 - idle : 게으른 - Cpu가 스케줄링 중간에 아무 프로세스도 처리 하지 않고 쉬는 상태 저번 시간에 애기했던 상태만으로 어떤 프로세스를 선택해서 상태를 바꿔줘야되는 모르기 때문에 다른 무언가 필요하다고 했었다.각 상태 별로 큐를 만들어 준다Ready State Queue, Running State Queue, Block State Queue를 만들어서 FIFO (선입선출)을 이용하여 프로세들은 나름 균등하게 실행시킨다.이것이 프로세스 상태기반 스케줄링 알고리즘의 가장 기본적인 내용이다.
2018 인하대학교 프로그래밍 경진대회(IUPC) I번 문제 문제우주의 인구를 반으로 줄이려는 악당 타노진스는 우주의 인구 수를 조절할 수 있는 밸런스 스톤이라는 보석을 차지하려고 한다. 이에 맞서는 씨벤저스 멤버 캡틴 학규는 타노진스보다 먼저 밸런스 스톤을 발견하여 파괴하려고 한다.밸런스 스톤은 N × N 블록으로 이루어진 숫자 퍼즐을 완성하면 얻을 수 있다. 이 숫자 퍼즐은 1가지 블록의 수가 비어져 있는 상태이며, 규칙을 만족하는 수 M을 블록에 채워넣으면 퍼즐이 완성된다. 규칙은 다음과 같다.[ 규칙 ]M을 채워넣었을 때 같은 행에 있는 수의 합은 모두 같아야 한다.M을 채워넣었을 때 같은 열에 있는 수의 합은 모두 같아야 한다.M을 채워넣었을 때 블록의 대각선의 있는 수들의 합도 모두 같아야 한..
2018년 12월 21일 멀티 프로그래밍과 Wait > 멀티 프로그래밍 : CPU 활용도를 극대화 하는 스케줄링 알고리즘> Wait : 간단히 저장매체로부터 파일 읽기를 기다리는 시간으로 가정+ 일정 프로세스가 CPU에 넣어지고나서 기다리는 시간Program A |Run| | | |Run| | | |Program B | |Run| | | |Run| | |Program C | | |Run| | | |Run| |Combined |Run|Run|Run| |Run|Run|Run| |*빈칸은 wait--> 이렇게 하기 위해서는 어떤 특정 시점에 어떤 프로세스를 실행시킬지 판단해야함 그 요소 중 하나가 프로세스 상태(Process Status)이다. 프로세스 상태 (Process Status)출처:https://z..
2018 인하대학교 프로그래밍 경진대회(IUPC) G번 문제 문제석규는 해외로 저렴하고 간편하게 송금할 수 있는 센트비 서비스를 이용하여 CTP 왕국에 놀러간 형동이에게 돈을 보내주려고 한다. 하지만 안타깝게도 석규는 센트비 비밀번호를 까먹어버렸고 돈을 보내주지 못한다. 다행히도 석규는 평소에 포스트잇에 비밀번호를 적어놓는다. 비밀번호는 알파벳 대문자로만 구성이 되어있으며 석규는 이 중 일부를 정확히 기억하고 있다.석규는 포스트잇을 확인하여 비밀번호를 입력하려고 했지만, 포스트잇은 여러 장 존재했고 이 중 어떤 포스트잇이 센트비 비밀번호가 적힌 포스트잇인지 모른다.석규는 센트비 비밀번호의 알파벳 중 등장하는 순서대로 N글자만 정확히 기억하고 있으며 포스트잇 중에 이 순서를 갖는 포스트잇이 센트비 비밀번호..
2018년 12월 20일 SJF (Shortest Job First) 스케줄러 - 가장 프로세스 실행시간이 짧은 프로세스부터 먼저 실행 시키는 알고리즘 * Real Time OS (RTOS) : 응용 프로그램 실시간 성능 보장을 목표로 하는 OS- 정확하게 프로그램 시작, 완료 시간을 보장 +시간에 민감한 프로세스들이 동작해야되는 시스템에서, 스케줄러도 다양함, 복잡하지 않고 단순함,공장같은데에서도 쓰임- Hardware RTOS, Software RTOS* General Purpose OS (GPOS) : 프로세스 실행시간에 민감하지 않고, 일반적인 목적으로 사용되는 OS (ex. Windows, Linux etc) 우선순위 기반 스케쥴러 (Priority-Based 스케줄러)- 정적 우선순위->프로세..
문제오른쪽 그림과 같이 삼각형이 나선 모양으로 놓여져 있다. 첫 삼각형은 정삼각형으로 변의 길이는 1이다. 그 다음에는 다음과 같은 과정으로 정삼각형을 계속 추가한다. 나선에서 가장 긴 변의 길이를 k라 했을 때, 그 변에 길이가 k인 정삼각형을 추가한다.파도반 수열 P(N)은 나선에 있는 정삼각형의 변의 길이이다. P(1)부터 P(10)까지 첫 10개 숫자는 1, 1, 1, 2, 2, 3, 4, 5, 7, 9이다.N이 주어졌을 때, P(N)을 구하는 프로그램을 작성하시오. 입력 첫째 줄에 테스트 케이스의 개수 T가 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있고, N이 주어진다. (1 ≤ N ≤ 100) 출력각 테스트 케이스마다 P(N)을 출력한다. 문제풀이이 문제는 동적 계획법 문제로 규칙이 매..