IT 지식/운영체제

IT 지식/운영체제

프로세스 생성과 복사

프로세스 관련 함수Win32 APIUNIXCreateProcess();fork();  exec();ExitProcess();exit();WaitForSingleObject();wait();   새로운 프로세스 생성OS는 프로세스 마다 가상메모리 공간을 할당한다.새로운 프로세스가 정상 작동하기 위해 가상 메모리 공간이 준비되어야 한다.Process + PCB + VMS(가상 메모리 공간)새로운 프로세스 생성 시 부모 프로세스(기존)와 자식 프로세스(새로운)로 관계가 형성된다.  fork와 exec의 차이fork(): 새로운 프로세스를 위해 메모리를 할당한다, 기존 프로세스를 복사한다.exec(): 새로운 프로세스를 위해 메모리를 할당 하지 않고, exec()에 의해 호출된 프로세스만 메모리에 남게된다.fo..

IT 지식/운영체제

프로세스 휴식, 보류 상태와 문맥(Context)

프로세스의 상태프로세스의 상태는 전이한다.생성 → 준비 → 실행 → 완료생성 → 준비 → 실행 → 대기 → 준비 → 실행 → 완료  Ready Queue (준비 상태 큐)준비 상태의 프로세스(스레드)를 Queue에 가지고 있는다.OS가 T1, T2 등의 프로세스(스레드)를 디스패치하여 끄집어내서 실행프로세스가 I/O 요청 시 Device에서 응답 받을 때 까지 기다린다. = 대기 상태 = Blocking I/O요청한 프로세스의 실행상태가 유지됨 =  기다리지 않고 비동기적으로 한다. = Non Blocking I/O  프로세스의 Sleep(휴식) 과 Suspend(보류)Sleep(휴식) → 자발적 이탈 ( '나 좀 자러 갈게' )Suspend(보류) → 외부 요인에 의해 의도치 않게 이탈 ( '너 좀 비..

IT 지식/운영체제

프로세스와 스레드

Process와 Thread의 차이프로세스(Process) = 관리의 단위 = 연산할 것프로세스 = 파일로 되어 있는 프로그램의 일부가 메모리에 적재된다. (실행되고 있는 프로그램)프로세스(작업)는 최소 1개의 스레드가 존재한다.스레드(Thread) = 1개 프로세스 내 개별화된 코드의 실행 흐름멀티 스레딩(Multi Threading) = 1개 프로세스 내 개별화된 여러 개의 실행 흐름  가상메모리에 할당된 공간OS는 Virtual Memory를 프로세스에 할당한다.프로세스에 속한 모든 스레드는 프로세스의 Virtual Memory로 공간이 제약된다.스레드는 실질적 연산의 주체멀티 스레딩 → 동시성 + 동기화 이슈프로세스 = 1 가구스레드 = 1 세대원Vurtual Memory = 1 가구가 존재하는 ..

IT 지식/운영체제

CPU 예측이 가져오는 문제점(멜트다운, 스펙터)

CPU가 예측해서 발생한 심각한 문제(CPU 게이트)CPU = 교수, Cache Memory = 조교, RAM = 도서관조교는 교수가 다음에 사용할 책을 예상하여 도서관에서 가져온다.반대의 관점 → 조교가 시키지도 않은 일을 하여 교수의 행동이 예측됨. CPU 정보 처리 방식CPU 안에는 레지스터가 있다. CPU는 일을 할 때 임시로 숫자를 레지스터에 적어둔다.각종 프로그램들은 RAM에 자신이 필요한 정보를 적어둔다.캐시는 RAM에 비해서 매우 빠르게 정보를 넣었다 뺐다 할 수 있다.  멜트다운 간단 설명유저 프로그램이 운영체제 권한 영역을 훔쳐보는 취약점100번 방에서 숫자를 꺼낸다.100번 방에서 꺼낸 숫자를 레지스터 al에 임시로 저장한다.al에 저장된 숫자와 1000을 더한다. (여기에서는 109..

IT 지식/운영체제

CPU와 캐시 메모리

기억장치 종류와 역할CPU = 연산 장치, Core(코어)가 연산을 한다.CPU 연산 속도 ↑ = 처리량 ↑ = 성능 ↑클럭 속도 ↑ = Scale Up, 코어의 개수 ↑ = Scale Out, RAM = 연산을 하는 데이터 저장RAM은 CPU에 비해 속도가 느리므로 속도 차이를 극복하기 위해 중간에 Cache memory를 사용한다.CPU가 연산을 하면서 Cache memory에 RAM에서 가져올 다음 정보를 예측하여 복사해온다.CPU: 교수, Cache memory: 조교, RAM: 도서관 → 조교는 교수가 다음에 사용할 책을 예상하여 도서관에서 가져온다.  CPU도 당신처럼 예측하고 미리 움직인다코어가 명령 + 데이터를 L1 캐시에서 가져온다.예측은 캐시 메모리에서 발생한다.0에서 99까지 숫자를 ..

IT 지식/운영체제

DMA와 고성능 소켓

DMA 정보 전달 방식기존 정보 전달 방식 = CPU → RAM 영역 1 → RAM 영역 2 → Device 영역 DMA(Direct Memory Access) = 약속된 곳에 Direct로 데이터를 Write → NIC에서 사용DMA 사용한 정보 전달 방식 = CPU → Device 영역   네트워크 상에서 정보 통신 어떤 파일이 있고 그 파일은 커널의 구성요소를 추상화 한다. → 인터페이스그 파일에는 I/O Buffer가 있다. 각 영역에는 I/O Buffer가 존재, I/O Buffer는 일종의 데이터 저장소다. → RAM 메모리 일부TCP/IP 네트워크 통신에서 파일은 Socket이 된다.파일에 대해 Write 한다. = 소켓은 Send 한다.NIC은 DMA를 지원한다.DMA 사용 시 그림1과 같..

Security Engineer
'IT 지식/운영체제' 카테고리의 글 목록