SI3SS - System Software
Course specification | ||||
---|---|---|---|---|
Course title | System Software | |||
Acronym | SI3SS | |||
Study programme | Software Engineering | |||
Module | ||||
Type of study | bachelor academic studies | |||
Lecturer (for classes) | ||||
Lecturer/Associate (for practice) | ||||
Lecturer/Associate (for OTC) | ||||
ESPB | 6.0 | Status | elective | |
Condition | Passed exams: Object-oriented programming 1, Algorithms and data structures, Computer architecture | |||
The goal | Fundamentals of assembly programming x86 and ARM processor architectures. Getting to know the features and how to design different system tools, such as macro processors, assemblers, emulators, linkers and loaders. | |||
The outcome | Enabling students to understand the function and structure of various system utilities, such as macro processors, assemblers, emulators, linkers and loaders. Students should be able to design and implement such tools or adapt existing ones. Students learn about the basics of assembly language programming. | |||
Contents | ||||
Contents of lectures | Fundamentals of x86 and ARM assembler. Assembler tool main functions. Assembler design. Macroprocessor design. Case Study: preprocessor for C/C++. Design of interpretrative and JIT emulators. Program object formats. Functions of a linker. Linker design. Loader design. Overlays technique. Dynamic linking and loading. | |||
Contents of exercises | Auditory and laboratory exercises illustrating some of the concepts and techniques discussed in class. A practical student project in the area of designing systems tools. | |||
Literature | ||||
| ||||
Number of hours per week during the semester/trimester/year | ||||
Lectures | Exercises | OTC | Study and Research | Other classes |
2 | 2 | 1 | ||
Methods of teaching | Lectures, exercises, individual work on a project | |||
Knowledge score (maximum points 100) | ||||
Pre obligations | Points | Final exam | Points | |
Activites during lectures | 0 | Test paper | 30 | |
Practical lessons | 0 | Oral examination | 0 | |
Projects | 30 | |||
Colloquia | 40 | |||
Seminars | 0 |