midterm
-
Definition of Computer ArchitectureA set of rules and methods which describe the functionality, organization, and implementation of computer systems.→ Design the internals of computer systemsDefinition of computer systemsA complete computer including the hardware, operating system, and peripheral equipment required for performing full operations.💡하드웨어, 소프트웨어를 아우르는 영역, 어플리케이션 레벨이 아니라 하드웨어 레벨에서 어떻..
1. Computer Abstractions and TechnologyDefinition of Computer ArchitectureA set of rules and methods which describe the functionality, organization, and implementation of computer systems.→ Design the internals of computer systemsDefinition of computer systemsA complete computer including the hardware, operating system, and peripheral equipment required for performing full operations.💡하드웨어, 소프트웨어를 아우르는 영역, 어플리케이션 레벨이 아니라 하드웨어 레벨에서 어떻..
2023.07.02 -
Synchronizationglobal 자료들을 여러 개의 쓰레드가 동시에 엑세스 할 때 문제가 발생할 수 있음. 결과적으로 공유 자원을 사용하는 과정에서 발생하는 문제라고 생각하면 됨.Producer Consumer problem (코드 암기)→ producer와 consumer의 속도가 차이가 나게 되면, 한정된 버퍼 상에서 문제가 발생할 수 있음 (다 차거나, 다 비거나)→ counter : valid한 변수가 몇 개 있는지이때, counter를 공유하고 있는 상황💡위 자료구조는 원형 큐 자료구조를 활용하고 있음. 만약 producer와 consumer가 서로 다른 cpu에 돌고 있다고 가정일단 쓰려면 register에 load하는 과정을 거쳐야함→ 이 결과를 거치면 4가 됨 (non-determi..
6. Process SynchronizationSynchronizationglobal 자료들을 여러 개의 쓰레드가 동시에 엑세스 할 때 문제가 발생할 수 있음. 결과적으로 공유 자원을 사용하는 과정에서 발생하는 문제라고 생각하면 됨.Producer Consumer problem (코드 암기)→ producer와 consumer의 속도가 차이가 나게 되면, 한정된 버퍼 상에서 문제가 발생할 수 있음 (다 차거나, 다 비거나)→ counter : valid한 변수가 몇 개 있는지이때, counter를 공유하고 있는 상황💡위 자료구조는 원형 큐 자료구조를 활용하고 있음. 만약 producer와 consumer가 서로 다른 cpu에 돌고 있다고 가정일단 쓰려면 register에 load하는 과정을 거쳐야함→ 이 결과를 거치면 4가 됨 (non-determi..
2023.07.02 -
Basic Concepts in Scheduling서버가 어떤 job을 pick해서 돌릴 것인가에 대한 이슈가 scheduling서버 : CPU-process, Disk-I/O, Printer-jobsNonpreemptible vs PreemptibleNonpreemptible : 뺏을 수 없는 것ex) Disk, Printer (생각해보면 자명함)Preemptible : 뺏을 수 있음을 허용함.ex) CPUCPU SchedulingLong term schedulingThe long-term scheduler, also known as the admission scheduler, is responsible for selecting which processes or jobs should be admitte..
5. Processor SchedulingBasic Concepts in Scheduling서버가 어떤 job을 pick해서 돌릴 것인가에 대한 이슈가 scheduling서버 : CPU-process, Disk-I/O, Printer-jobsNonpreemptible vs PreemptibleNonpreemptible : 뺏을 수 없는 것ex) Disk, Printer (생각해보면 자명함)Preemptible : 뺏을 수 있음을 허용함.ex) CPUCPU SchedulingLong term schedulingThe long-term scheduler, also known as the admission scheduler, is responsible for selecting which processes or jobs should be admitte..
2023.07.02 -
Limination of Process ModelProcess model 문제fork를 통해 만들어졌기 때문에 공유가 가능함에도 불구하고 공유할 수 없는 문제가 발생→ 공유할 수 있는 자원이라면 공유하는 것이 유리Multiprocessing 이슈이제는 cpu가 하나의 컴퓨터에 많이 존재할 수 있음. 따라서 지금까지 짠 process를 4개의 process에 분배해서 잘 돌리면 효율이 더 증가하지 않을까결론 resource도 optimize하고, process를 찢어서 여러개의 cpu에 돌릴 수 있게끔 → multithread라는 개념이 등장.Thread Model사실 process model은 사실 매우 무겁다. 리소스도 중복이 많이 되고, fine grane하게 찢을 수 없다는 문제점이 존재.공유 불가..
4. MultithreadingLimination of Process ModelProcess model 문제fork를 통해 만들어졌기 때문에 공유가 가능함에도 불구하고 공유할 수 없는 문제가 발생→ 공유할 수 있는 자원이라면 공유하는 것이 유리Multiprocessing 이슈이제는 cpu가 하나의 컴퓨터에 많이 존재할 수 있음. 따라서 지금까지 짠 process를 4개의 process에 분배해서 잘 돌리면 효율이 더 증가하지 않을까결론 resource도 optimize하고, process를 찢어서 여러개의 cpu에 돌릴 수 있게끔 → multithread라는 개념이 등장.Thread Model사실 process model은 사실 매우 무겁다. 리소스도 중복이 많이 되고, fine grane하게 찢을 수 없다는 문제점이 존재.공유 불가..
2023.07.02 -
What is a Process?Process의 정의 an instance of a running programProgram과 Process의 차이는 무엇인가?→ 돌아가고 있는 프로그램 하나의 instance (Active한 개념), 프로그램을 램에 들고와서 cpu가 active하게 하는 대상. 물론 1개의 프로그램이 여러 process가 될 수 있다. (수행중인 프로그램이 process이다.) Program이라는 것은 passive한 개념이다.Process의 구성요소가 무엇인가?ImageText sectionData sectionHeap sectionmemory that is dynamically allocatedStack sectiontemporary data storage when invoking ..
3. ProcessesWhat is a Process?Process의 정의 an instance of a running programProgram과 Process의 차이는 무엇인가?→ 돌아가고 있는 프로그램 하나의 instance (Active한 개념), 프로그램을 램에 들고와서 cpu가 active하게 하는 대상. 물론 1개의 프로그램이 여러 process가 될 수 있다. (수행중인 프로그램이 process이다.) Program이라는 것은 passive한 개념이다.Process의 구성요소가 무엇인가?ImageText sectionData sectionHeap sectionmemory that is dynamically allocatedStack sectiontemporary data storage when invoking ..
2023.07.02 -
Computer system ArchitectureMain processor / memory / IO device→ 이 장치들이 bus로 연결되어 있음 CPU는 메인 메모리에 있는 것들을 하나씩 가져와서 시작PC: 현재 실행하고 있는 주소를 담고 있는 register모든 IO device는 controller가 있음, 일명 펌웨어로 돌아가는 cpu는 아니지만 컨트롤러이다. https://www.techopedia.com/definition/11356/io-controller-ioc→ I/O controller한테 명령을 시키고, 그것이 끝날 때 알려달라고 요청. 그래서 interrupt라는 개념이 등장. 매 instruction이 끝날 때마다 interrupt를 체크하고, 만약 interrupt가 왔으면..
2. Backgrounds & PreliminariesComputer system ArchitectureMain processor / memory / IO device→ 이 장치들이 bus로 연결되어 있음 CPU는 메인 메모리에 있는 것들을 하나씩 가져와서 시작PC: 현재 실행하고 있는 주소를 담고 있는 register모든 IO device는 controller가 있음, 일명 펌웨어로 돌아가는 cpu는 아니지만 컨트롤러이다. https://www.techopedia.com/definition/11356/io-controller-ioc→ I/O controller한테 명령을 시키고, 그것이 끝날 때 알려달라고 요청. 그래서 interrupt라는 개념이 등장. 매 instruction이 끝날 때마다 interrupt를 체크하고, 만약 interrupt가 왔으면..
2023.07.02 -
Definition of Operating systemA. Silberschatz: “A program that acts as an intermediary between a user of a computer and the computer hardware.”Dietel: “Programs that make the hardware usable.”Operating Systems Goals자원의 효율적인 사용예전에는 하드웨어가 비쌌고, 그 효율을 최대한 쓰기 위해서 만들어짐.사용자 편의성유저 입장에서 커맨드를 모르고도 사용할 수 있게끔신뢰성, 접근성Evolution of Operating systemsBatch system (한번에 하나의 프로그램만 처리할 수 있음)multi-programmed batch sy..
1. IntroductionDefinition of Operating systemA. Silberschatz: “A program that acts as an intermediary between a user of a computer and the computer hardware.”Dietel: “Programs that make the hardware usable.”Operating Systems Goals자원의 효율적인 사용예전에는 하드웨어가 비쌌고, 그 효율을 최대한 쓰기 위해서 만들어짐.사용자 편의성유저 입장에서 커맨드를 모르고도 사용할 수 있게끔신뢰성, 접근성Evolution of Operating systemsBatch system (한번에 하나의 프로그램만 처리할 수 있음)multi-programmed batch sy..
2023.07.02 -
Functional Margin and Geometric MarginWhat is the differenceThe key difference between the functional margin and geometric margin is that the functional margin is defined for every data point, whereas the geometric margin is defined only for the data point closest to the decision boundary. The geometric margin is often used as a measure of the generalization performance of a linear classifier, a..
7. Support Vector MachineFunctional Margin and Geometric MarginWhat is the differenceThe key difference between the functional margin and geometric margin is that the functional margin is defined for every data point, whereas the geometric margin is defined only for the data point closest to the decision boundary. The geometric margin is often used as a measure of the generalization performance of a linear classifier, a..
2023.07.01