OS
-
6_1 동기화OS 2021. 5. 15. 17:03
Cooperating process는 서로 영향을 주고 받을 수 있는 프로세스다. - 메모리 주소를 직접 공유하거나, shared memory, code와 data - thread를 공유한다. →동시에 실행됨으로 인해 data inconsistency 발생 1. Consumer-Producer problem circular buffer에서 producer는 버퍼가 가득차서 저장할 수 없는 상태, consumer는 버퍼가 텅 비어서 가져올 수 없는 상태일때 문제가 발생한다. solution : producer는 buffer가 가득차지 않았을때만 버퍼를 생산한다. consumer는 buffer가 비어있지 않았을때만 버퍼를 소비한다. count라는 int 변수를 통해 구현한다. producer while (t..
-
ProcessOS 2021. 3. 30. 18:34
Process: a program in execution; process execution must progress in sequential fashion program is passive entity stored on disk , process is active program becomes process when executable file loaded into memory. Multiple parts text=program code. current activity includes program counter data section contains global variable stack contains temporary area Heap contains memory dynamically allocate..
-
OS week5OS 2021. 3. 30. 18:23
System program은 프로그램 개발과 실행환경을 제공한다. File manipulation: create, delete, copy, rename, ... status information: programming language support ... Programming language support : compiler, assemblers, debuggers, interpreters. compiler : 여러번 실행할때는 interpreter보다 빠르다. interpreter: 처음 한번 실행할때는 compiler보다 빠르다. (대표적인 interpreter language: python) Program loading and execution: absolute loaders, relocatable..
-
컴퓨터 시스템 개요OS 2021. 3. 18. 23:32
OS란? 사용자와 컴퓨터 HW를 이어주는 프로그램 OS 목표 컴퓨터 시스템 사용을 편리하게 해주기 컴퓨터 하드웨어를 효율적으로 쓰기 성능 척도 Throughput(단위시간당 처리량): jobs/sec Utilization(활용도): %of time busy Response time: sec/job 컴퓨터는 크게 4가지로 나뉜다... Hardware: 컴퓨팅 자원을 제공한다 (예: CPU, 메모리, I/O디바이스) OS: 사용자와 애플리케이션의 하드웨어 사용을 제어하고 조정한다. Application programs: 사용자의 컴퓨팅 문제를 해결하는 시스템 자원이 사용되는 방법을 정의한다. Users: 사람, 기계, 다른 컴퓨터 OS가 하는 일 - 사용자 관점과 시스템 관점으로 나뉜다. 사용자: 편리하고 ..
-
컴퓨터의 성능OS 2019. 7. 11. 20:16
1. 성능의 정의 일반적으로 단위 시간동안 더 많은 작업을 처리하는 컴퓨터가 성능이 더 좋다고 할 수 있다. 성능 = 1 / CPU 실행시간 컴퓨터 M1과 M2가 있다고 가정할 때,.. M2는 M1보다 성능이 n배 좋다 M1에 대한 M2의 성능 비율 = n = M2의 성능/M1의 성능 2. 암달의 법칙 : 병렬화에 의한 시스템 성능 향상의 한계를 지적. 시스템의 일부 기능을 아무리 향상하더라도 성능이 향상되지 않은 부분에 의해 전체 시스템의 성능이 제한된다. 따라서 M1에 비해 M2의 시스템 전체 속도 향상 s는 여기서 개선될 수 있는 부분에 대해 무한정으로 병렬화를 하거나 하드웨어를 무한정으로 투자한다면 시스템의 전체 속도 향상은 다음과 같다. 시스템의 일부를 아무리 개선해도 개선되지 않은 부분의 역수..