Implementation of a learning environment for the system programming language

Implementation of a learning environment for the system programming language

Implementation of grade management

Individual project BSc

Completed on 2 July 2008 by Boris Richter.PDF-Dokument

Contact person

Subject areas

  • Translator construction
  • e-Learning
  • System programming language

Background

In the System Software and Distributed Systems department, a system programming language based on the Pascal and Modula-II languages is used to visualise algorithms from the areas of operating systems and distributed systems. Using the system programming language, it is possible to present the essential points of an algorithm concisely. Unfortunately, there is currently only an "intuitive" specification for this language and no concrete implementation in the form of a parser or translator. In order to enable students of the relevant teaching modules to familiarise themselves systematically with the system programming language, the aim of the project is to lay the foundations for an interactive learning system which - based on an implementation of a system programming language translator - is capable of teaching both the language itself and relevant applications from the fields of operating systems and distributed systems.

Job description

Specific subtasks to be completed:

  1. Using the existing algorithms and the intuitive, semi-formal language description from the documents for the courses Practical Computing Science or Operating Systems 1 (and possibly Operating Systems 2 and Distributed Operating Systems), the syntax and semantics of the system programming language should be formally specified - in cooperation with the teachers of the relevant teaching modules.
  2. a translator is to be implemented that translates a source programme written in the system programming language first into an intermediate code and then into one of the target languages C or Java
  3. Based on the translator, an interactive, web-based, prototypical ``learning system'' is to be created for some of the contents of the above-mentioned lectures, e .g:
    • the system programming language itself
    • semaphore implementation
    • process state model and process change
    • Address conversion for virtual memory
    • Page swapping strategies for virtual memory
    • UNIX file management using I-node tables
    • Distributed mutual exclusion

Previous knowledge

  • Basic knowledge of compiler construction(e.g. from the compiler construction part of the Practical Computing Science module)
  • Basic knowledge of operating systems(e.g. from the operating systems part of the Practical Computing Science module)
(Changed: 11 Feb 2026)  Kurz-URL:Shortlink: https://uol.de/p37538en
Zum Seitananfang scrollen Scroll to the top of the page

This page contains automatically translated content.