본문 바로가기

대학교 강의/게임 서버 프로그래밍 입문

(3)
게임 서버 프로그래밍 입문 - 프로세스와 프로세스 관리 들어가며 시험기간이 난 너무 싫다. 프로세스와 상태 저장소에 있던 프로그램이 메모리를 할당받아 실행 가능한 상태가 되면 그것이 프로세스가 된다. 이때 프로그램이 메모리를 할당받음과 동시에 상태를 함께 지닌다. Run, Ready, Wait의 3가지의 상태를 지닐 수 있는데, Run은 실행되고 있는 상황이며, CPU를 점유하고 있는 상황을 의미한다. Ready는 Run 상태로 전이되기 전에 CPU 점유를 기다리고 있는 상태이다. 이때, 프로세스들은 Run과 Ready 상태를 보통 200ms의 시간 동안 번갈아가며 전이된다. 이를 Time-Slice라고 한다. 각각의 프로세스들은 Time-Slice를 가지고, 이는 CPU를 할당받아 사용할 수 있는 시간이다. 프로세스는 자신의 Time-Slice의 시간만큼 ..
게임 서버 프로그래밍 입문 - 하드 링크와 소프트 링크 (Hard Link and Soft Link) 들어가며 쉽지 않아... 쉽지 않아... 링크(Link) 링크는 파일과 파일을 말 그대로 연결시켜준다는 뜻이다. 이렇게 파일과 파일이 연결되어 생겨난 파일이 바로 링크 파일(Link File)이다. 링크 파일은 하나의 i-node에 연결되도록 만들어진 것이다. 엄연히 따지자면 크게 하드 링크(Hard Link)와 소프트 링크(Soft Link)로 나뉜다. 소프트 링크의 경우 심볼릭 링크(Symbolic Link) 라고도 불린다. 사실 심볼릭 링크라고 더 많이 불린다. 그림으로 설명하자면 위와 같다. 하지만 그림만으로 모든 설명이 되지 않으니, 자세한 설명으로 풀어보자. 하드 링크(Hard Link) 하드 링크는 동일한 i-node를 갖는 파일을 하나 만드는 것과 같다. 예를 들어 파일 A에 대해서 하드 ..
게임 서버 프로그래밍 입문 - 리눅스 파일 시스템 (Linux File System) 들어가며 음, 아직까지는 본격적으로 뭔가를 시작했다는 느낌은 들지 않는다. 교수님도 4주차까지는 Linux 사용에 익숙해질 수 있도록 한다고 하셨고 그래도 배운 것이 있다면 간단하게 파일 시스템을 알아보았다. 그것을 정리하고자 한다. 리눅스 파일 구조 리눅스 파일 구조를 설명할 때 빠질 수 없는 것이 i-node라는 것이다. Index Node의 줄임말로, 파일의 데이터 블록이 디스크 상의 어느 주소에 위치하고 있는가에 대한 정보를 기록한다. 따라서 i-node를 메타데이터의 한 종류로 볼 수 있다. 파일 시스템 내에서 i-node는 고유하다. 그러면 파일 시스템은 한 컴퓨터에 하나만 존재하는가? 그렇지 않다. SSD, HDD가 있고 C, D드라이브가 있듯이 각각의 파티션이나 드라이브에서 독자적으로 파일..