Aim of Module | To extend the principles learned in the preliminary level course to a fuller understanding of the relationship between the systems programming language and the operating system. |
Credits | 7 |
Student Learning hours | 70 |
Prescription Expiry Date | Nov 2007 |
Topics | Highest Skill Level | Suggested Assessment Percentage | |
1 Language Basics | P | 25 | |
2 OS Function Calls | A | 15 | |
3 Macros | P | 15 | |
4 Directives | P | 10 | |
5 Sub-Programs | P | 15 | |
6 Techniques | P | 15 | |
7 Maintenance Considerations | C | 5 | |
100 |
1 | Language Basics |
1 | LANGUAGE BASICS | |
P | 1.1 | Use an editor to create the source code of a systems programming language. |
P | 1.2 | Debug programs using dynamic debugging facilities. |
C | 1.3 | Describe the various addressing modes for the operands available in the language studied. |
P | 1.4 | Describe and use the various instruction formats available in the language studied. |
A | 1.5 | Explain the internal storage of data and convert from one format to another. |
2 | OS Function Calls |
C | 2.1 | Explain the mechanism used for communication between a program and the operating system. |
A | 2.2 | Use such a mechanism to: |
- perform screen I/O | ||
- perform error handling | ||
- perform communications | ||
- perform memory management |
3 | Macros |
P | Use a macro definition language with particular emphasis on the following: | |
- keyword parameters | ||
- positional parameters | ||
- conditional macros | ||
- use of macros to enforce installation standards | ||
- use of macro libraries |
4 | Directives |
P | 4.1 | Use directives to: |
- define storage | ||
- define data types and values where appropriate | ||
- debug usage | ||
- document source code | ||
- page titles and HEADERS etc | ||
- form feeds | ||
5 | Sub-Programs |
P | 5.1 | Use sub-programs emphasising their logical independence and using the following techniques: |
- correct parameter passing | ||
- stack considerations | ||
- register saving | ||
- concepts of local and global variables | ||
- sub-program libraries | ||
- integration with high-level languages | ||
6 | Techniques |
P | Use the selected language to handle: | |
- string functions | ||
- tables | ||
- pointers | ||
- condition code setting | ||
- vector tables | ||
- stacks | ||
- segmented programs | ||
- dispatch tables | ||
- interrupt handling | ||
- real number arithmetic | ||
7 | Maintenance Considerations |
C | Explain the special problems of maintaining systems programming language programs. |