운영체제(2)
-
Intel DDIO
기존의 컴퓨터 시스템에서 데이터 전송은 어떻게 이루어질까? 데이터 전송은 패킷의 단위로 이루어진다. 데이터 전송을 하려고 하면 먼저 컴퓨터에서는 데이터를 패킷 단위로 나눈다. 그리고 데이터 패킷은 큐에 들어가게 된다. 큐에 있는 패킷을 보낼 때가 되면 CPU는 NIC에게 네트워크로 패킷을 보내게 시킨다. NIC는 Network Interface Card로 컴퓨터가 네트워크에 물리적으로 연결될 수 있게 해준다. NIC는 CPU의 명령을 받고 데이터 패킷을 네트워크 케이블 (이더넷)으로 보낼 수 있는 전기 신호나 light pulse로 변환한다. 전송은 이렇고 수신은 다음과 같이 일어난다. NIC에서 패킷을 받게 되면 NIC의 리시브 버퍼에 패킷들이 복사된다. 패킷이 리시브 버퍼에 잘 들어가면 NIC는 CP..
2023.11.08 -
리눅스 커널 컴파일 시 주의사항
리눅스 커널을 소스 코드로부터 설치할 때 몇가지 주의사항이 있다. 여러번 설치해보다보면 알게되는건데 1. make를 하다가 안될 수 있는데 마지막에 에러가 뜨지 않고 중간에 떠서 놓칠 수 있다. 따라서 make를 하고 나서 한번 더 make를 해보는게 좋다. 어차피 되지 않은 부분만 다시 컴파일하기 때문에 시간이 적게 걸리고, 에러를 제대로 확인할 수 있다. 2. config를 수정하는 방법에는 두가지가 있다. .config을 vim으로 직접 수정하는 방법, make menuconfig를 통해서 수정하는 방법. make menuconfig를 통해서 dependency를 확인하고 수정하는 것이 중요하다. 3. grub을 수정할 때는 반드시 fallback과 timeout을 활용해야만한다. timeou을 활..
2023.05.31