Topic outline

  • Many modern software system consist of multiple co-operating entities and many of them use heavily various networks, especially the Internet. Such multiprocessing platforms and distributed nature of software makes knowing and mastering concurrent programming a must for any computer scientist. This course addresses such skills and the related theory.

    Material

    The course material includes various readings and handout material. The course handles issues widely and addresses both practical programming aspects and the theoretical aspects related to the practice.

    Course slides act as bridge between the lectures and exercises. They are also the primary study guide for the exam. The slides will be made available here on MyCourses for Aalto users.

    Exercise and the material related to them are very essential. The exercises and the related material will be available on the A+ learning platform

    Learning outcomes and content

    The course addresses concurrent and distributed systems in general and views concurrent and distributed algorithms. The focus of the course is in principles of concurrent programming, synchronization and communication mechanisms.

    Note that course syllabus has a somewhat different viewpoint into the course (it is partly written before the re-organizing of the course took place).

    Schedule

    The course spans over the 2nd period and is rather intense (allocate enough time for your studying!). There are weekly sessions and exercise rounds (i.e., assignments to be done as homework).

    Note that the amount of work you need depends on the grade you are targeting. For a top grade, you will need a lot of work hours.

    Components of the course

    The course consist of two main components

    • the exercises
    • the exam
    Both must be passed to pass the course.

    Corona pandemic related information: as long as the pandemic is ongoing, all the course components can be done remotely online. This means that there will be no hall lectures or exercises in the traditional sense, also the exam will be a remote one.

    Requirements and grading

    Doing the exercises and taking an exam are mandatory. The exercises can be done only during the lecturing period of the course. Check the department exam schedule for the next opportunity.

    Previous courses

    Substitutes for Courses: T-106.5600 Concurrent Programming and it predecessors.

    Contact

    If you have something to ask about the course, contact cs-e4110 at aalto.fi. Do not use the personal email addresses of the course personnel for contacting.