Schedule, syllabus and examination date

Choose semester

Changes in the course due to coronavirus

Autumn 2020 we plan for teaching and examinations to be conducted as described in the course description and on semester pages. However, changes may occur due to the corona situation. You will receive notifications about any changes at the semester page and/or in Canvas.

Spring 2020: Teaching and examinations was digitilized. See changes and common guidelines for exams at the MN faculty spring 2020.

Course content

Presentation of fundamental concepts of distributed objects including local and distributed objects, remote object invocation, communication, parameter passing principles, garbage collection, performance issues and typical applications. We also cover advanced type systems including concepts such as immutability and its application to distributed programming and access control. We also discuss the design of language constructs for parallelism. Throughout we use the programming language Emerald as a base. We dig into the implementation of distributed objects including virtual machines, compilation techniques, run-time typing, dynamic program loading, and how to do distributed garbage collection.

Learning outcome

After completing the course, you will:

  • be able to explain Emerald’s type system and its significance for distribution
  • know the concepts of distribution, immutability, contra-variance, replication, remote procedure calls, mobility, threads, threads synchronization, thread mobility and garbage collection
  • know the main principles of distributed garbage collection, remote calls, threads, object classes, object types, synchronization, reliability and high performance distributed applications
  • be able to program large distributed applications using Emerald with many threads and complex synchronization requirements, and with objects distributed across the entire world
  • know the speed of light and its impact on distributed systems
  • be able to use Planetlab to measure and evaluate the performance of distributed systems and application

Admission to the course

Students admitted at UiO must apply for courses in Studentweb. Students enrolled in other Master's Degree Programmes can, on application, be admitted to the course if this is cleared by their own study programme.

Nordic citizens and applicants residing in the Nordic countries may apply to take this course as a single course student.

If you are not already enrolled as a student at UiO, please see our information about admission requirements and procedures for international applicants

IN1010 – Object-oriented Programming, INF2100 – Programming project (continued), IN2100 – Logic for System Analysis and INF3110 – Programming Languages (continued)

Overlapping courses

Teaching

2 hours of lectures each week, with 6 hour lectures every 3 weeks. 2 hours of group exercises each week. The course is heavily Learning-by-Doing thru multiple larger programming assignments.

All mandatory assignments must be passed prior to the final exam.

Attending the first lecture is mandatory.

Examination

2 home exams account for 25% of the final grade each, while an oral exam (4 hours long written digital if more than 20 candidates) account for 50% of the final grade.

It will also be counted as one of your three attempts to sit the exam for this course, if you sit the exam for one of the following courses: INF5510 - Distributed objects (continued)IN9570 - Distributed Objects

Examination support material

Oral/written exam: All written material allowed

Language of examination

The examination text is given in Norwegian. If the course is taught in English, the examination text will only be given in English. You may answer in Norwegian, Swedish, Danish or English.

Grading scale

Grades are awarded on a scale from A to F, where A is the best grade and F is a fail. Read more about the grading system.

Resit an examination

Students who can document a valid reason for absence from the regular examination are offered a postponed examination at the beginning of the next semester. Re-scheduled examinations are not offered to students who withdraw during, or did not pass the original examination.

Special examination arrangements, use of sources, explanations and appeals

See more about examinations at UiO

Last updated from FS (Common Student System) Sep. 22, 2020 11:15:24 AM

Facts about this course

Credits
10
Level
Master
Teaching
Spring
Examination
Spring
Teaching language
English