2. 라이브러리 함수 :: YJcode

라이브러리 함수는 표준 C 라이브러리를 구성하는 수많은 함수 가운데 하나일 뿐이다. 라이브러리 함수의 목적은 매우 다양해서, 파일을 연다든지, 시간을 사람이 읽을 수 있는 형태로 바꾼다든지, 문자열 2개를 서로 비교한다든지 하는 것들이 모두 포함된다.

상당수의 라이브러리 함수는 시스템 호출을 전혀 사용하지 않는다. 반면에 시스템 호출을 써서 구현된 라이브러리 함수도 있따. 예를 들어, fopen() 라이브러리 함수는 실제로 파일을 열기 위해 open() 시스템 호출을 사용한다. 라이브러리 함수는 종종 하부의 시스템 호출보다 사용하기 편리한 인터페이스를 제공하도록 설계됐다. 예를 들어 printf() 함수는 출력 서식과 데이터 버퍼링을 제공하지만, write() 시스템 호출은 단지 한 블록의 바이트를 출력할 뿐이다. 마찬가지로 malloc() 과 free() 함수는 다양한 관리 작업을 수행해서 이를 이용하면 하부의 brk() 시스템 호출보다 훨씬 쉽게 메모리를 할당하고 해제할 수 있다.

 

+ Recent posts