2017 Programming III O

Font size  SML

Register update notification mail Add to favorite lecture list
Academic unit or major
Computer Science
Saito Suguru  Sato Toshiki 
Class Format
Media-enhanced courses
Day/Period(Room No.)
Mon3-4(W611)  Thr1-2(W935)  
Course number
Academic year
Offered quarter
Syllabus updated
Lecture notes updated
Language used
Access Index

Course description and aims

A comprehensive study of UNIX system call and system programming. You learn concepts of process, socket communication as a concurrent system model and programming techniques based on them. This course also includes a study of object-oriented paradigm and object-oriented programming in Java and basic concepts of parallel programming and programming techniques using them.

Student learning outcomes

The goal of this course is to design and implement parallel and concurrent programs in the C and Java languages using UNIX system call, socket communication and synchronization mechanism.


Sytem call, Process, Network Communication , Thread and Synchronization, Parallel programming, C, Java

Competencies that will be developed

Specialist skills Intercultural skills Communication skills Critical thinking skills Practical and/or problem-solving skills

Class flow

Classroom learning is followed by exercises

Course schedule/Required learning

  Course schedule Required learning
Class 1 Object Oriented Paradigm Object Oriented Paradigm
Class 2 Object Oriented Programming, Java Object Oriented Programming, Java
Class 3 Exercise: Object Oriented Programming Object Oriented Programming
Class 4 Unix system call (1) : process, fork Unix system call (1) : process, fork
Class 5 Unix system call (2) : File abstraction, pipe Unix system call (2) : File abstraction, pipe
Class 6 Exercise: UNIX system call UNIX system call
Class 7 GUI, Event driven, I/O GUI, Event driven, I/O
Class 8 Exercise: GUI, Event driven, I/O GUI, I/O
Class 9 Concurrent processing, Thread Concurrent processing, Thread
Class 10 Execise: Concurrent processing Concurrent processing
Class 11 Socket Communication Socket Communication
Class 12 Exercise: Socket communication Socket Communication
Class 13 Parallel Processing Parallel Processing
Class 14 Parallel Programming model Parallel Programming model
Class 15 Exercise: Parallel Processing Parallel Processing



Reference books, course materials, etc.

Advanced Programming in the UNIX Environment (3rd Ed), W.Richard Stevens, Addison-Wesley (2013)
The Java Programming Language (4th Ed.) Addison-Wesley(2005).
Other handout is prepared.

Slides are available in lecture.

Assessment criteria and methods

Evaluating exercise reports and examination.

Related courses

  • CSC.T243 : Procedural Programming Fundamentals
  • CSC.T253 : Advanced Procedural Programming
  • CSC.T263 : Functional Programming Fundamentals
  • CSC.T273 : Object-Oriented Programming
  • CSC.T361 : Object-Oriented Design
  • ZUS.S302 : Programming IV
  • ZUS.P301 : Operating Systems

Prerequisites (i.e., required knowledge, skills, courses, etc.)

A study of basic concepts of object-oriented paradigm and object-oriented programming using Java language.

Page Top