728x90 Computer Science/OS3 [OS] 프로세스 동기화 Cooperating Process 서로 영향을 주거나 받는 관계의 process들 공유된 Concurrent하게 접근할 수 있게 되면 Data Inconsistency 문제가 발생한다. Cooperating Process를 사용하는 경우 서로 Process에 접근하고 영향을 줄 수 있기 때문에 Data Inconsistency가 발생할 수 있다. 이것을 해결하는 방식으로 사실 Process들이 있으면 서로의 순서를 침범하지 않고 순서대로 수행되게 만들어 주면 된다. 이렇게 수행되면 같은 데이터에 동시에 접근하지 않게 되므로 data integrity문제가 발생하지 않을 것이다. (integrity of data - 데이터의 무결성을 의미한다. 정확하고 일관적인 데이터 값을 유지하는 성질.) Data I.. 2021. 9. 19. [정리] 이중 동작 모드 (Dual-Mode Operation) 이중 동작 모드(Dual-Mode Operation) 이중 동작 모드를 사용하게 되면 운영체제를 보호할 수 있게 된다. OS위에서 여러가지 프로그램이 돌게 된다. 운영체제 자체가 자신을 구동하기 위해서 수행하는 커널 프로그램들과 운영체제 위에서 사용자들이 사용하게 되는 user application이 있다. 그런데 이 둘 모두 같은 운영체제 위에서 돌고 있기 때문에, 시스템 자원을 공유하게 된다. 그렇게 되면서 User Application에 제한을 따로 두지 않으면 해당 application에서 운영체제에 중요한 시스템 자원을 망가뜨릴수도 있게 된다. 그래서 user가 사용하는 영역과 운영체제가 사용하는 영역을 제한적으로 접근할 수 있는 보호 장치가 필요해진 것이다. 그 장치로 Dual-Mode Ope.. 2021. 4. 5. [정리] 운영체제 동작 (Operating System Operation) 현재 우리가 사용하는 대부분의 운영체제는 Interrupt driven (인터럽트 구동식)으로 동작하고 있습니다. interrupt driven이란, 말그대로 아무것도 안하고 있는 상태에서 가만히 기다리고 있다가 누군가 interrupt를 보내면 그때 그 interrupt를 보고 수행해야 할 일을 수행하는 방식입니다. Trap은 정상적이지 않은 오류(0으로 나누기, invalid한 메모리로의 접근)이나 사용자 프로그램 등에서 요청해서 생성되는 소프트웨어에 의한 interrupt입니다. 1개의 Interrupt를 처리하기 위한 1개의 Service Routine을 만들어 두게 됩니다. 어떤 인터럽트가 들어왔을 때 그 인터럽트에 해당하는 동작을 각각 정해두는 것입니다. 올바른 운영체제의 경우 한 프로그램이 .. 2021. 3. 31. 이전 1 다음 반응형