Externally indexed torrent
If you are the original uploader, contact staff to have it moved to your account
Textbook in PDF format
System programming (also known as systems programming) stands for the activity of programming system components or system software. System programming provides software or services to the computer hardware, while application programming produces software which provides tools or services for the user. "System focused programming" serves as an abstraction layer between the application, i.e. the Python script or program, and the operating system, e.g. Linux or Microsoft Windows. By means of such an abstraction layer it is possible to implement platform independent applications in Python, even if they access operating specific functionalities. Python provides various modules to interact with the operating system, such as:
- os
- platform
- subprocess
- shutils
- glob
- sys
Therefore Python is well suited for system programming, or even platform independent system programming. This is one of the reasons by the way why Python is wrongly considered by many as a scripting language. The proper way to say it: Python is a full-fledged programming language which can be easily used as a scripting language. The general advantages of Python are valid in system focused programming as well:
- simple and clear
- wel structured
- highly flexible
The os module is the most important module for interacting with the operating system. The os module allows platform independent programming by providing abstract methods. Nevertheless it is also possible by using the system and the exec function families to include system independent program parts. (Remark: The exec-Functions are introduced in detail in our chapter "Forks and Forking in Python" The os module provides various methods, e.g. the access to the file system. Platform independant application often need to know on which platform the program or script is running.
os Module
Finite State Machine (FSM)
Turing Machine
Formal Definition of a Turing machine.
Implementation of a Turing machine in Python
Towers of Hanoi
Mastermind / Bulls and Cows
Python and JSON