컴퓨터가 켜질 때는 부트스트랩이 실행된다. 이후, 커널이 관장하게 되는데 CPU에 이벤트를 알리는것이 인터럽트다. 소프트웨어에 의해 발생하는 인터럽트를 트랩 이라고도 하면 System call 에 의해 동작하게 된다. 반면에 하드웨어로 발생하게 되는 인터럽트는 System bus 에 의해 동작하게 된다. 

 

폴링(Polling) 은 주기적으로 다른 장치의 상태를 감시하기 때문에 컴퓨팅 자원의 낭비가 발생한다. 따라서 주도적 이벤트를 처리하는 인터럽트를 발생하여 처리하게 된다. 

 

메인 메모리 같은 경우는 RAM 이며 이는 휘발성 즉, 사라진다. 

 

커널과 사용자의 매개 인터페이스는 System call 이다. 사용자의 입출력을 통해 System call 을 요청하게 되면 소프트웨어에 의해 발생하는 인터럽트를 통해 CPU에 이벤트를 알리게 된다. (위에 적힌 글) 

 

DMA 는 Direct Memory Access 의 준말인데 장치와 메모리가 직접 연결되는 것을 말한다. Programmed I/O 에 비해 DMA를 사용하게 되면 CPU의 하는 일이 줄이게 된다. 왜냐하면, Programmed I/O 의 경우 I/O 동안 CPU 는 다른 동작을 할 수 없다. 즉, DMA I/O에 의한 장치 데이터가 직접 메모리에 접근, CPU에 의한 인터럽트는 한번만 발생 또한 I/O 동안 CPU는 다른 동작을 할 수 있다.

 

멀티 프로세스는 처리량을 증가한다. 대표적으로 클러스터 시스템이 이에 포함되는데 여러개의 CPU를 모아놓은 것이다. 여러 독립적인 시스템을 하나로 모아놓은것을 의미한다. 

 

동그라미가 시스템 이라고 하고 네모난 박스가 Storage 라고 하면 Storage 를 공유하게 되고 이를 Local Area Network 로 공유하는 형태가 된다. = 클러스터링 시스템 

이와 다르게 멀티태스킹 시스템은 시분할 하는것을 의미한다. 프로세스 작업시간을 정해서 번갈아 가는 방식이다. (빠르게 동작하며 사용자측 동시에 보게 된다. ) 마치 동시에 움직이는 것처럼 처리한다. 이와 다르게 멀티 프로그래밍은 아래와 같이 동작한다고 생각했다. 

따라서, 멀티태스킹에 비해 CPU 사용량이 높다. 

OS 는 앞서 인터럽트에 주도적으로 처리한다고 했다. 감시하는 폴링과는 다소 거리가 있다. 

특권 명령이라는 용어로 유저모드, 커널모드일때 실행시킬 수 있는 명령어가 다르다. (이중 모드) 이를 통해 사용자가 커널단에 명령어를 직접 입력하는것을 방지한다. 

 

디스크와 메모리의 차이는 디스크는 프로그램 (1개) - 수동적 이고 메모리는 프로세스(n개) - 능동적 이다. 

CPU는 프로세스, 쓰레드 스케줄링을 관장한다. 제거 또는 추가 하거나 재실행 또는 동기화 한다. 

 

캐싱은 지역성 원리를 기반으로 하는데 시간 지역성은 한번 접근한 데이터는 다시 접근할 확률이 높다는 것이고 공간 지역성은 특정 데이터 가까운 메모리 주소 다른 데이터도 접근할 가능성이 있다. 는 것이다. 

 

System 에는 Memory, Storage, File, Mass-Storage 등 다양하게 있다.

'Computer Science > Network' 카테고리의 다른 글

Network05 :: 서브넷 마스크(2)  (0) 2020.09.02
Network04 :: 서브넷 마스크(1)  (0) 2020.09.02
Network03 :: Ip(2)  (0) 2020.09.02
Network02 :: IP  (0) 2020.09.02
Network01 :: 서브넷 마스크  (0) 2020.08.22