Overview of the Lectures

Lecture slides will appear here. Please remember that slides are audio-visual aids to the lectures. They are provided here to remind you of what went on during the lecture. Slides are not lecture notes; much less are they the lectures themselves. They replace neither the lectures nor the text book. Last year's slides can be found here for reference.

  • Lecture 1
    PDF Slides
  • Lecture 2
    We covered material directly from the book. Essentially Secs 2.2, 2.5, and then Secs 3.1 through 3.8. Tomorrow we'll do 3.9 and chap 6. We simply looked at the programs and scenarios and talked about them on our own, so take a look to see how Ben-Ari puts it, and compare with your notes.
  • Lecture 3
    We did a review, then Sec 3.10 (after lecture 2, I announced this by mistake as Sec 3.9 ) and then Chap 6 (specifically, 6.1, 6.2, 6.3, 6.5, 6.6, 6.7). On Monday, we will do 6.4 (and an introduction to invariants), finish Chap 6, and, if time permits, also introduce Chap 7.
    PDF Slides
  • Lecture 4
    Today we did a large recap, and some material from the attached slides. We completed Secs 6.1 through 6.9 from the textbook.
    PDF Slides
  • Lecture 5
    We did essentially all of Chap 7 from the textbook, except Sec 7.7.
    PDF Slides
  • Lecture 6
    We did a brief recap on shared memory, and an introduction to functional programming. We spent a fair amount of time on the differences between communication models, and on how to use state diagrams to analyse communicating programs.
    PDF Slides
  • Guest lecture: Michal Palka on JR
    Michal Palka held a guest lecture on JR.
    PDF Slides
  • Guest lecture: Cons Åhs on Erlang
    Cons T. Åhs held a guest lecture on Erlang.
    PDF Slides
    Code
  • Lecture 7

    We did a recap of message passing, and noted that the "headings" under which we discuss the features of any communication model have specific meanings that do not necessarily relate simply to those of other models. So for example, "autonomy" has to be understood anew for each model.

    We covered examples from the book for both Chap 8 and Chap 9, and looked at a more general pseudo-code that allows dynamic process and channel creation. See the attached "Sieve" program. Since this last is not in the book, it is included only for education, not for examination.

    PDF Slides
    Sieve
  • Guest lecture: Wolfgang Ahrendt on model checking
    Wolfgang held a lecture on model checking using SPIN.
    PDF Slides
  • Lectures 8 & 9
    These slides summarise both the lecture on Mon 7 Oct and the lecture on Mon 14 Oct. As always, they are to be read in close conjunction with the textbook.
    PDF Slides
  • Lecture 10

    As always, these slides are only intended to remind you of what we did in the lecture; they are not intended to be read independently.

    I have translated the message passing code for every example into Ben-Ari style. I hope this helps those who have trouble adjusting to the more concise blackboard notation I use. In the Sieve example, Ben-Ari notation does not allow a dynamically growing network; instead, we have to use a static network of size fixed in advance. Once the exam is over, you can more easily appreciate the conciseness of the blackboard notation, and also why it is good to have different notations for different situations.

    PDF Slides
Last modified: Tuesday, 22-Oct-2013 17:59:36 CEST
COMPUTER SCIENCE AND ENGINEERING - Chalmers University of Technology and Göteborg University
SE-412 96 Göteborg, Sweden - Tel: +46 (0)31- 772 1000