glibc를 통한 fread() 실행 구조 분석


glibc를 통한 fread() 실행 구조 분석

미리 알아둘 것 _IO_FILE 구조 glibc를 통한 fwrite() 실행 구조 분석 이번에는 fwrite()와 쌍으로 같이 나오는 fread() 함수를 glibc 차원에서 한번 분석해 봅시다. fwrite()가 주로 파일이나 버퍼를 읽어서 그것을 나중에 다시 사용할 목적으로 다른 파일에 저장하는 것에 초점이 맞추어져 있다면, fread()는 파일에서 데이터를 읽어 그것을 지금 활용하는데 차이가 맞추어져 있습니다. 물론, 명쾌한 답을 찾을 수는 없었으나, 사실 fread()와 fwrite()는 서로 공유할 수 있으며, 일부의 경우 fread()와 fwrite() 함수들은 서로 바꿔 쓰면서도 거의 같은 효과를 낼 수 있습니다. 이 부분에 대해서는 나중에 C언어에 대한 내용을 정리할 기회가 있을때 한번 다뤄보고 싶은 주제입니다. (그렇지만 지금은 글감이 너무 밀려서...) C언어 기준, fread() 함수 또한 fwrite() 함수와 같은 <stdio.h> 헤더 파일에 아래와 같이 그...


#_IO_FILE #자료구조 #오픈소스 #소스코드 #분석 #구조체 #vtable #system #linux #kernel #glibc #fread #C언어 #CS #Clang #C #analysis #_IO_jump_t #콜스택

원문링크 : glibc를 통한 fread() 실행 구조 분석