
창병모, 리눅스 프로그래밍 원리와 실제(생능출판, 2022) 5.1 시스템 호출 컴퓨터 시스템 구조 - 하드웨어는 CPU, 메모리, 저장장치, 주변장치 등으로 구성 - 운영체제는 하드웨어를 운영 관리하는 시스템 소프트웨어이며 유닉스/리눅스의 경우 커널(kernel)이 하드웨어를 운영 관리 운영체제 서비스 - 프로세스 관리 - 파일 관리 - 메모리 관리 - 통신 관리 - 주변장치 관리 시스템 호출 시스템 호출(system call) : 운영 체제가 제공하는 서비스에 대한 프로그래밍 인터페이스 - 시스템 호출은 커널에 서비스를 요청하기 위한 프로그래밍 인터페이스로 응용 프로그램은 시스템 호출을 통해서 커널에 서비스를 요청 가능 시스템 호출 구현 5.2 파일 파일 열기와 파일 디스크립터 - 파일 디스크립터는 ..

창병모, 리눅스 프로그래밍 원리와 실제(생능출판, 2022) 4.1 파일 및 파일 포인터 - 파일을 사용하기 위해서 응용 프로그램은 위 그림처럼 시스템 호출을 통해 필요할 때마다 커널에 서비스 요청 가능 - 하지만 파일을 보다 쉽게 사용하는 방법은 C언어가 제공하는 표준 라이브러리 함수를 사용하는 것 파일 - C 파일은 위 그림처럼 모든 데이터를 연속된 바이트 형태로 저장하는데 저장된 데이터에 따라 텍스트 파일과 이진 파일로 구분할 수 있음 텍스트 파일(text file) - 문자들만으로 이루어진 파일 - 한글, 영문, 숫자 등의 문자들을 포함 - 여러 개의 줄로 이루어지며 매 줄마다 \n을 포함 이진 파일(binary file) - 모든 데이터를 컴퓨터 내부의 이진수 표현 그대로 저장한 파일 - 이미지..