tags:

views:

261

answers:

2

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

+2  A: 

I'm not familiar with the term "System level program" per se, but if it's anything like "System level programming", then it has to do with writing fairly low-level code that interacts directly with a "system" (usually specific hardware/platform/architecture/etc) and abstracts it in some way (System Programming) to allow for Higher level programs to be written that can be system-agnostic.

Your question seems to be related to what is the difference between "system programming" and application programming. Functions like open(), printf(), etc assume the underlying system calls are present, and are, in a way, high-level. That said, the line between system-level and application-level programming is blurry, and has shifted up in many peoples minds. Many people now consider any program written in languages like C or C++ to be a system-specific program that is not portable, 15 years ago, that was not the case.

So, if you are asking what is the distinction between Application & System level programming, then you have a lot of reading to do. Look over the linked wikipedia article. It should give you a good starting point.

dpb
thank you for your reply :)
Sharat Chandra
+1  A: 

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 hand sys_open, sys_close, sys_read etc 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.

vinit dhatrak
thank you vinit :) that was a very nice and clear answer
Sharat Chandra