본문 바로가기

system

difference system call and library function

"system call" 이란

커널의 자원을 사용자가 사용할 수 있도록 만들어 놓은 함수이다. system call 을 호출하게 되면 커널모드로 전환하여 실행하게 되는데.. 이러한 이유로는 프로세스가 커널 모드에서 실행되는 경우에만 수행될 수 있는 작업들이 있기 때문이다. 만약 system call 사용하고자 한다면 별도로 사용자 모드에서 메모리 할당이 필요하다.

 

"library function" 이란

일반적으로 사용자들이 많이 사용하는 기능을 미리 함수로 만들어 놓은 것들로, 문자열 처리, 표준 입출력 등의 함수가 여기에 해당한다. libary function 은 system call 과 다르게 사용자 모드에서 실행된다. library function 을 호출하면 사용자 공간에 메모리 공간을 할당하기에 별도의 메모리 할당이 필요하지 않고 이용할 수 있다.

'system' 카테고리의 다른 글

core dump 생성  (0) 2016.07.28
fake ebp 기법  (0) 2016.05.31
ltrace사용법  (0) 2016.04.17
msfconsole shellcode  (0) 2016.04.16
rp(find rop gadget)  (0) 2016.03.19