Are the programs written on schedulers ,thread library , process management, memory management, et al called systems programs ? How are they different from the programs that implement functions like open() , printf() , scanf() , read() .. they have a prefix sys_open, sys_close, sys_read etc , right ? Is there any difference of hierarchy between the programs that implement system calls and system level programs like that implement thread library, process management , memory managemnt etc..
Hope you understood my qstn
Functions like open() , printf() , scanf() , read() are library function implemented on top of their
sys_*counterparts so they can be used for any Application development. On the other handsys_open, sys_close, sys_readetc are implemented as-part-of-system commonly known as kernel. On top of this, system programs like thread library, compilers, linkers are implemented which helps other application development. Hope this clears the difference between system, system programs and application programs.