프로세스 프로세스가 무엇이라고 물어보면, 어떻게 답해야 할까 > The definition of a process, informally, is quite simple: it is a running program - OSTEP OSTEP에서는 프로세스를 간단하게 실행중
우리는 많은 프로세스를 동시에 실행시키려고 하는데, 주어진 CPU는 한정적이다.이를 극복하기 위해 OS는 CPU가 많은 것 같게 느끼도록 착각을 일으킨다.OS can promote the illusion that many virtual CPUs existTime Sha
이전 글에서 OS가 CPU를 가상화하는 방법 중 메커니즘에 해당하는 Context Switch에 대해서 알아보았다.Context Switch를 통해 한정된 CPU에서 많은 프로세스를 짧은 시간 간격으로 번갈아 가면서 실행시킴으로써 우리는 한번에 여러 프로세스가 실행되는
초기에는 프로그램을 실제 메모리에 직접 올려서 사용, 하지만 컴퓨터는 time sharing, multiprogramming을 하기 때문에 이보다 발전된 방법이 필요하다!메모리 가상화 : 실제 메모리는 하나지만,OS는 프로세스에게 프로세스가 마치 자신만의 메모리를 갖고
이전 글(프로세스와 스레드)에서 기본적인 프로세스와 스레드의 차이 그리고 멀티스레드와 멀티프로세스의 차이를 알아봤다. 결국 한 프로세스내에서 스레드는 메모리를 공유하기 때문에 병렬 처리를 할 때, 속도가 메모리 사용 측면에서 강점을 가진다. 하지만, 스레드를 제대로
이전 글에서 OS가 동시성을 제공하는 방법에 대해 알아보았다. 동시성을 제공하기 위해 lock을 사용하는데 이때 발생하는 대표적인 문제점인 Deadlock에 대해서 알아보자.Deadlock : 스레드들이 서로가 점유한 자원을 사용하기 위해 무한정 대기하는 상태1\. 비
컴퓨터 공학 전공 공부를 하다보면, '캐시해서 성능을 높인다, 캐싱한다.'와 같은 말을 많이 보게 된다. 한번 등장한 것을 기록하여 다시 접근할 때는 빠르게 접근할 수가 있구나라는 생각이 든다. 하지만 정확한 동작 원리를 알지 못해서 이번 기회에 정리해보려고 한다.캐시