목록2026/04/08 (2)
Sonji-log
System Call목차시스템 콜 정의시스템 콜 제공시스템 콜 세부구성시스템 콜 구현시스템 콜 정의시스템 콜(System Call)은 사용자 공간(User Space) 과 커널 공간(Kernel Space) 사이를 이어주는 인터페이스다.시스템 콜이 필요한 이유는 크게 3가지다.하드웨어를 직접 다루지 않아도 되게 해준다.예) 파일 입출력을 할 때, 애플리케이션은 디스크 구조나 파일시스템 내부 구현을 몰라도 된다.보안과 안정성을 지켜준다.예) 커널이 중간에서 권한 검사와 자원 접근 통제를 수행한다.프로세스마다 가상화된 실행 환경을 제공한다.예) 각 프로세스는 자신만의 주소 공간을 가진 것처럼 동작한다.리눅스에서 사용자 공간 프로세스가 커널 기능을 사용하려면, 기본적으로 시스템 콜 경로를 거쳐야 한다.트랩(T..
1. 왜 const를 사용해야 하는가const를 쓰는 이유는 간단하다. "바뀌면 안 되는 값을 못 바꾸게 만들기" 위해서다.의도의 전달const를 붙이면 "이 값은 안 바뀐다"는 약속을 코드에 직접 적는 셈이다. 그래서 나중에 코드를 읽는 사람(미래의 나 포함)도 의도를 바로 이해할 수 있다.컴파일러를 통한 실수 방지const 값은 바꾸려고 하면 컴파일 단계에서 바로 에러가 난다. 프로그램을 실행하기 전에 실수를 잡을 수 있다는 뜻이다.const int maxSize = 100;maxSize = 200; // 컴파일 에러 → 실수를 즉시 발견핵심은 "내가 조심하자"가 아니라 "컴파일러가 막아주게 하자"다. const를 붙일 수 있으면 가능한 붙이는 편이 안전하다.2. const의 적용 범위const는 생..
