System programming involves designing and writing computer programs that allow the computer hardware to interface with the programmer and the user, leading to the effective execution of application software on the computer system. Typical system programs include the operating system and firmware, programming tools such as compilers, assemblers, I/O routines, interpreters, scheduler, loaders and linkers as well as the run time libraries of the computer programming languages.
The notes of System Programming below include following topics:
Types of Software
Language Processor
Assemblers
Compilers
Loaders & Linkers
Micro & Macro Processor
Scanning & Parsing