DM519: Concurrent Programming (5 ECTS)
STADS: 15006001
Level
Bachelor course
Teaching period
The course is offered in the spring semester.
4th quarter.
Teacher responsible
Email: zhou@imada.sdu.dk
Timetable
Group |
Type |
Day |
Time |
Classroom |
Weeks |
Comment |
Common |
I |
Tuesday |
12-14 |
U26 |
15 |
|
Common |
I |
Tuesday |
12-14 |
U26 |
15 |
|
Common |
I |
Tuesday |
12-14 |
U26 |
15 |
|
Common |
I |
Tuesday |
12-14 |
U26 |
15, 17-21 |
|
Common |
I |
Tuesday |
12-14 |
U26 |
15 |
|
Common |
I |
Tuesday |
12-14 |
U26 |
15 |
|
Common |
I |
Tuesday |
12-14 |
U26 |
15 |
|
Common |
I |
Tuesday |
12-14 |
U26 |
15 |
|
Common |
I |
Tuesday |
12-14 |
U26 |
17-21 |
|
Common |
I |
Tuesday |
12-14 |
U26 |
17-21 |
|
Common |
I |
Tuesday |
12-14 |
U26 |
17-21 |
|
Common |
I |
Tuesday |
12-14 |
U26 |
17-21 |
|
Common |
I |
Tuesday |
12-14 |
U26 |
17-21 |
|
Common |
I |
Tuesday |
12-14 |
U26 |
17-21 |
|
Common |
I |
Tuesday |
12-14 |
U26 |
17-21 |
|
Common |
I |
Thursday |
10-12 |
U26 |
15 |
|
Common |
I |
Thursday |
10-12 |
U26 |
15 |
|
Common |
I |
Thursday |
10-12 |
U26 |
15 |
|
Common |
I |
Thursday |
10-12 |
U26 |
15 |
|
Common |
I |
Thursday |
10-12 |
U26 |
15 |
|
Common |
I |
Thursday |
10-12 |
U26 |
15 |
|
Common |
I |
Thursday |
10-12 |
U26 |
15 |
|
Common |
I |
Thursday |
10-12 |
U26 |
15, 17, 19 |
|
Common |
I |
Thursday |
10-12 |
U26 |
17 |
|
Common |
I |
Thursday |
10-12 |
U26 |
17 |
|
Common |
I |
Thursday |
10-12 |
U26 |
17 |
|
Common |
I |
Thursday |
10-12 |
U26 |
17 |
|
Common |
I |
Thursday |
10-12 |
U26 |
17 |
|
Common |
I |
Thursday |
10-12 |
U26 |
17 |
|
Common |
I |
Thursday |
10-12 |
U26 |
17 |
|
Common |
I |
Thursday |
10-12 |
U26 |
19 |
|
Common |
I |
Thursday |
10-12 |
U26 |
19 |
|
Common |
I |
Thursday |
10-12 |
U26 |
19 |
|
Common |
I |
Thursday |
10-12 |
U26 |
19 |
|
Common |
I |
Thursday |
10-12 |
U26 |
19 |
|
Common |
I |
Thursday |
10-12 |
U26 |
19 |
|
Common |
I |
Thursday |
10-12 |
U26 |
19 |
|
Common |
I |
Friday |
10-12 |
|
16 |
|
Common |
I |
Friday |
10-12 |
|
16 |
|
Common |
I |
Friday |
10-12 |
|
16 |
|
Common |
I |
Friday |
10-12 |
U27a |
16 |
|
Common |
I |
Friday |
10-12 |
|
16 |
|
Common |
I |
Friday |
10-12 |
|
16 |
|
Common |
I |
Friday |
10-12 |
|
16 |
|
Common |
I |
Friday |
10-12 |
|
16 |
|
S1 |
TE |
Wednesday |
12-14 |
U26 |
15-21 |
|
S1 |
TE |
Wednesday |
12-14 |
U26 |
15-21 |
|
S1 |
TE |
Wednesday |
12-14 |
U26 |
15-21 |
|
S1 |
TE |
Wednesday |
12-14 |
U26 |
15-21 |
|
S1 |
TE |
Wednesday |
12-14 |
U26 |
15-21 |
|
S1 |
TE |
Wednesday |
12-14 |
U26 |
15-21 |
|
S1 |
TE |
Wednesday |
12-14 |
U26 |
15-21 |
|
S1 |
TE |
Wednesday |
12-14 |
U26 |
15-21 |
|
S1 |
TE |
Thursday |
10-12 |
U26 |
16 |
|
S1 |
TE |
Thursday |
10-12 |
U26 |
16 |
|
S1 |
TE |
Thursday |
10-12 |
U26 |
16, 18, 21 |
|
S1 |
TE |
Thursday |
10-12 |
U26 |
16 |
|
S1 |
TE |
Thursday |
10-12 |
U26 |
16 |
|
S1 |
TE |
Thursday |
10-12 |
U26 |
16 |
|
S1 |
TE |
Thursday |
10-12 |
U26 |
16 |
|
S1 |
TE |
Thursday |
10-12 |
U26 |
16 |
|
S1 |
TE |
Thursday |
10-12 |
U26 |
18 |
|
S1 |
TE |
Thursday |
10-12 |
U26 |
18 |
|
S1 |
TE |
Thursday |
10-12 |
U26 |
18 |
|
S1 |
TE |
Thursday |
10-12 |
U26 |
18 |
|
S1 |
TE |
Thursday |
10-12 |
U26 |
18 |
|
S1 |
TE |
Thursday |
10-12 |
U26 |
18 |
|
S1 |
TE |
Thursday |
10-12 |
U26 |
18 |
|
S1 |
TE |
Thursday |
10-12 |
U26 |
21 |
|
S1 |
TE |
Thursday |
10-12 |
U26 |
21 |
|
S1 |
TE |
Thursday |
10-12 |
U26 |
21 |
|
S1 |
TE |
Thursday |
10-12 |
U26 |
21 |
|
S1 |
TE |
Thursday |
10-12 |
U26 |
21 |
|
S1 |
TE |
Thursday |
10-12 |
U26 |
21 |
|
S1 |
TE |
Thursday |
10-12 |
U26 |
21 |
|
Show entire timetable
Show personal time table for this course.
Comment:
Ubegrænset deltagerantal. 4. kvartal.
Prerequisites:
None
Academic preconditions:
The content of Programming A (DM502) and Programming B (DM503) must be known. It is recommended to follow Operating Systems (DM510) at least concurrently.
Course introductionThe course aims to describe and explain important concepts and techniques in concurrent programming, i.e., programs using multiple interacting threads or processes. Besides a systematic treatment of concepts and learning rigorous techniques to specify and model concurrency, the course focuses on applying the methods to gain experiences in concurrent programming.
Expected learning outcomeAfter the course the student is expected to be able to:
- identify the use of concurrency in programs
- describe the concurrency mechanisms covered in the course
- explain fundamental problems, techniques, and solutions for concurrent programs
- reason about properties of concrete concurrent programs
- describe and analyze concurrent architectures using model-based approaches
- design and implement non-trivial concurrent programs using model-based approaches
- account for some common concurrent program architectures
Subject overviewProcesses, threads, monitor concept, shared memory, synchronization, safety and liveness, model-based design, dynamic systems, message passing, concurrent architecture.
Literature- Meddeles ved kursets start..
Syllabus
See syllabus.
Website
This course uses
e-learn (blackboard).
Prerequisites for participating in the exam
None
Assessment and marking:
b) Mandatory project. Internal evaluation by lecturer, grading pass/fail.
a) Oral exam with marks according to the Danish 7-mark scale and external evaluation.
Reexam after the 2nd quarter.
The re-exam may differ from the ordinary exam.
Expected working hours
The teaching method is based on three phase model.
Forelæsninger (20 timer), eksaminatorier (22 timer), projektarbejde.
Educational activities
Language
This course is taught in Danish or English, depending on the lecturer. However, if international students participate, the teaching language will always be English.
Course enrollment
See deadline of enrolment.
Tuition fees for single courses
See fees for single courses.