Opleiding AI
Onderwijsmededelingen

Blackboard
Studentinformatiesysteem
WebMail

Course Computer Systems

"Computersystemen"

This is the information of year 2014

The site of the previous year can be found here.

Description

The official description of course baiCOSY06 can be found (in Dutch) here.

Literature

The course is based on the book Computer Systems: A programmer's perspective, 2nd edition by R.E. Bryant and D.R. O'Hallaron. Notice that our course is based on the USA edition, the international edition has one chapter less (and a confusion layout). This year we recomment to use the electronic edition. The book has also a student site with additional material. In addition, the module 'computerarchitecture' of the book 'Van 0 en 1 tot pipeline processor' will be covered. This syllabus can be bought at the educational office.


Schedule

The official schedule can be changed any moment. Please report when you discover a difference with the schedule on this page. The course is scheduled in week 36-43.

Students, who want to work ahead or who were not able to attend a lecture, can listen to the recordings of my lectures. Download Lecturnity Player and listen to lecture, synchronized with the sheets. The last hour of each day the teaching assistants will assist with the assignments. The course is given in 6 weeks, so note that in some weeks more than chapter is covered (and should be read).

Chapter Topic Week remark
  1 Tour of systems 36
  2 Data representation 36
  3 Machine language 37 Program Control in C
  4 Processor Architecture 38 Data representation in C
  5 Code Optimization 38-40
  6 Memory hierarchy 40-41
  7 Linking
  8 Exceptional control flow 42
  9 Virtual memory 41
10 System-level I/O 42
11 Network programming 42
12 Concurrent programming 42

This are the list of assignments during the course

  • Tuesday week 36 - Tuesday week 37: L1 - Datalab, Makefile
  • Friday week 36: P1 - 'Rekenmachine' (H1-H3).
  • Friday week 37: P2 - Harvard machine (H7-H8).
  • Wednesday week 37 - Thursday week 38: L2 - Bomblab
  • Friday week 38: P3 - Pipelining (H9).

  • Tuesday week 40 - Tuesday week 41: L3 - Cache Performance lab
  • Friday week 40: P4 - Function calls (H10).
  • Wednesday week 41 - Thursday week 42: L4 - Proxylab
  • Friday week 41: P5 - Caching (H11).
  • Wednesday and Thursday week 42: P6 - Accumulatormachine in hardware (H12)

This are the list of recordings of the lectures:

These lectures were recorded with the Lecturnity Studio. Download Lecturnity Player and listen to lecture, synchronized with the sheets. Note that this recordings are converted to the official version, and can now be played on Windows, Mac and Linux.

From the book, we have covered the following sections:

  • H1
  • H2
  • H3
  • H4.3.1, H4.4, 4.5.6-4.5.8, 4.5.12,
    ---------------------First Exam-------------
  • H5.1-5.10, 5.13-5.15
  • H6.1.4, 6.2, 6.3, 6.4.6, 6.4.7, 6.5, 6.6, pp. 639 & pp.649 "aside"s,
  • H8.1-8.5.1, 8.7, 8.8
  • H9.1-9.5, 9.7.2, 9.8.1-3, 9.11, 9.12
  • H10.3, H10.4, H10.6, H10.8-10
  • H11.3.3, 11.4-11.7
  • H12.3-12.6

Previous exams:

See also the exam page (including solutions) from CMU.

Evaluation

The course was in the previous year evaluated by the participants with a 6.9:

.


Inheritance

In the old days, when the title Bachelors didn't exist yet at Dutch Universities a different course was given, by a different teacher, and with another focus. Still, much can be learned from the course 'Operating- and Distributed systems'.


Links

Last updated October 15, 2014.

o This web-page and the list of participants to this course is maintained by Arnoud Visser (a.visser@uva.nl)
Faculty of Science
University of Amsterdam

visitors in arnoud@science.uva.nl