The key difference b/n system call & library function are given below: 1.System calls are given by system and executed in the system kernel. Than they are called non-portable calls where as library function include ANSI C standard library.So, they are portable. 2.System calls are entry point into the kernel.So, they are not linked with the program. Where as library functions are linked with the program. 3.System calls are given by system,Where as library functions are given by programmer. 4.In system calls,time overhead in calling the system call since a transition has to take place between user mode and kernel mode,Where as time overhead is not required in library function call. 5.In C, We use open() to open a file is a system call,Where as use fopen() to open a file is a library function.