Göm menyn
IT-Programmet, Tema 1 i termin 4:

TTIT61 Processprogrammering och Operativ System

/Concurrent Programming and Operating Systems/

TTIT61: Labs


It is your job as a student to convince the la assistant that you have done and understand the laboratory material.

The better your documentation and set of test cases, the easier it will be for your assistant to be convinced and to give you full credit for the labs.

To make it easier for you to get the credits, you have to follow these guidelines:


For every assignment the following files should be created:

  • A readme file which contains:
    • The files you have created and a short description
    • The major changes you have made to the given files
  • A testcase file which contains:
    • Which test cases did you use
    • What was the output of the test cases

These files should always contain the authors name and a modification date.

Source Code Format

The following paragraphs give you some advice for formatting your source code.

Follow the style that the given Nachos code looks like (variable naming, indenting, etc.).

Mark your changes in the given source code. This can be done by inserting comments like this:

// ------------------------------------------------ 
// 00-01-24: your_name: changed
// end of changes
// ------------------------------------------------ 

If you create new modules, every source file shall have a header with the following information:

  • Course name and laboratory assignment part title
  • Filename
  • Group identification and students names
  • Short description
  • History (creation date and major changes with dates)

Every new function shall have a header with the following information:

  • Short description of the function
  • Detailed description of the arguments and the return value

Furthermore major important parts of the sources should be commented.

The following examples show a header of a source file and a header of a function.

Example for a file header:

      // ===========================================
      // TTIT61: Lab 1: solution.cpp
      // -------------------------------------------
      // Group XYZ: Mister X / Miss Y
      // -------------------------------------------
      // This module extends Nachos to be able to work
      // with semaphors.
      // -------------------------------------------
      // 00-02-01: misterX: created
      // 99-02-12: missY: semSignal: changed signal type
      // =========================================== 
Example for a function header:
      // -------------------------------------------
      // int readInput(int file)
      // -------------------------------------------
      // This function reads continuously from the
      // file  and returns the number of bytes read
      // -------------------------------------------
      // Parameters:
      //   file: handle of the file to read from
      // -------------------------------------------
Register for labs


Kritiska sektioner
Processorstöd för operativsystem

Intro: C/make
Intro: installation
Threads and synchronisation
System calls
Execution of user programs
File system

Lesson 1
Lesson 2
Lesson 3

C/C++ OH
C/C++ tutorial
C pointers tutorial
Pintos documentation
Memory Issues in Pintos
Pintos on-line documentation
The gnu DDD documentation
DDD tutorial
Debugging topics
Programing with threads

Guidelines for writine and changing source code
Pintos source code

Sidansvarig: Sergiu Rafiliu
Senast uppdaterad: 2011-09-12