[운영체제] Cpu Scheduling(공룡책 스터디 정리)
CS/운영체제2023. 12. 13. 12:11[운영체제] Cpu Scheduling(공룡책 스터디 정리)

본 포스팅은 인프런 공룡책 강의를 기반으로 한 스터디 개인 정리를 위한 포스팅입니다. 잘못된 부분이 있다면 언제든 지적해주시면 감사하겠습니다! Concept 멀티 프로그래밍 된 운영체제에서 적용하는 개념 💡 멀티 프로그래밍이란? ⇒ 한 개의 프로세서가 하나의 프로세스를 수행하는 동안 다른 프로세스에 접근할 수 있도록 하는 방법 ⇒ 멀티 프로그래밍을 하려면 CPU의 처리속도가 빠르고 남는 시간이 있는 경우 Context Switching을 통해 다수의 프로세스를 접근할 수 있어야 함. 간단하게 설명해서 Ready Queue에 있는 프로세스들 중에 어떤 것을 Running Queue에 넣어 CPU할당을 시킬 것인지를 CPU Scheduling이라 함. 단순히 FIFO-Queue를 통해 먼저 큐에 들어온 프로..

[운영체제] Thread & Concurrency(공룡책 스터디 정리)
CS/운영체제2023. 12. 13. 10:54[운영체제] Thread & Concurrency(공룡책 스터디 정리)

본 포스팅은 인프런 공룡책 강의를 기반으로 한 스터디 개인 정리를 위한 포스팅입니다. 잘못된 부분이 있다면 언제든 지적해주시면 감사하겠습니다! Overview 메모리 상에 여러개의 프로세스가 적재되어있고 하나의 CPU가 Context Switch를 통해 작업이 수행되는 멀티 프로그래밍 구조를 배웠음. 하나의 프로세스가 여러개의 threads of control을 가질 수 있음. 프로세스(process)란? 프로세스(process)란 단순히 실행 중인 프로그램(program) 즉, 사용자가 작성한 프로그램이 운영체제에 의해 메모리 공간을 할당받아 실행 중인 것. 이러한 프로세스는 프로그램에 사용되는 데이터와 메모리 등의 자원 그리고 스레드로 구성. 스레드(thread)란? 스레드(thread)란 프로세스(..

[운영체제] Processes (공룡책 스터디 정리)
CS/운영체제2023. 12. 9. 22:02[운영체제] Processes (공룡책 스터디 정리)

본 포스팅은 인프런 공룡책 강의를 기반으로 한 스터디 개인 정리를 위한 포스팅입니다.잘못된 부분이 있다면 언제든 지적해주시면 감사하겠습니다!Process 란?프로그램 : 해당 프로그램이 하드디스크에 존재할 때를 의미프로세스 : 해당 프로그램이 실행되어 메인메모리로 올라오게 되면, 그 프로그램을 프로세스라고 부름.Process 메모리 구조Code 영역실행할 프로그램의 코드가 저장됩니다. CPU는 이 영역에서 명령어를 하나씩 가져와 처리하게 됩니다.Data 영역전역변수와 정적변수가 저장됩니다. 이 변수들은 프로그램이 시작될 때 할당되어 프로그램 종료 시 소멸됩니다.Stack 영역지역변수, 매개변수, 리턴값 등 잠시 사용되었다가 사라지는 데이터를 저장하는 영역입니다.Heap 영역동적 데이터 영역입니다. 메모리..

[PS] 백준2294 : 동전 2(Java)
CS/알고리즘2023. 12. 9. 19:52[PS] 백준2294 : 동전 2(Java)

문제 2294번: 동전 2 2294번: 동전 2 첫째 줄에 n, k가 주어진다. (1 ≤ n ≤ 100, 1 ≤ k ≤ 10,000) 다음 n개의 줄에는 각각의 동전의 가치가 주어진다. 동전의 가치는 100,000보다 작거나 같은 자연수이다. 가치가 같은 동전이 여러 번 주어 www.acmicpc.net 풀이 다이나믹 프로그래밍으로 분류된 문제로 간단한 메모이제이션을 통해 풀이가 가능. 접근법 입력으로 주어진 동전으로 목표가치 K를 만드는 최소 개수를 구하는 문제로 DP문제인 만큼 Sub Problem을 찾으려 했음. Sub Problem : 각각의 동전으로 1원부터 목표(K)까지의 가치를 만들기위한 사용한 동전의 최소개수 부분 문제를 찾았으니 먼저 해야할 것은 부분 해를 저장할 dp배열을 선언하는 것...

image