Omid Ardakanian, PhD

Associate Professor, Faculty of Science - Computing Science
Directory

Fall Term 2026 (1970)

CMPUT 379 - Operating System Concepts

3 units (fi 6)(EITHER, 3-0-3)

Introduction to the structure, components, and concepts behind modern general-purpose operating systems. Processes: process state transitions; operations on processes; interrupt processing; multiprocessor considerations; resource allocation; synchronization; critical sections and events; semaphores; deadlock: avoidance, detection, and recovery; memory management; virtual memory; paging and segmentation; page replacement strategies; working sets; demand paging; process scheduling; scheduling algorithms; file system functions; file organization; space allocation; virtual machines. Prerequisites: CMPUT 201 and 204, or 275; one of CMPUT 229, E E 380 or ECE 212.

LECTURE EA1 (51377)

2026-09-01 - 2026-12-08
MWF 12:00 - 12:50

LECTURE A1 (51511)

2026-09-01 - 2026-12-08
MWF 12:00 - 12:50

Winter Term 2027 (1980)

CMPUT 313 - Computer Networks

3 units (fi 6)(EITHER, 3-0-3)

Introduction to computer communication networks; protocols for error and flow control; wired and wireless medium access protocols; routing and congestion control; internet architecture and protocols; multimedia transmission; recent advances in networking. Prerequisites: CMPUT 201 and 204, or 275; and one of STAT 151, 161, 181, 235, 265, SCI 151, or MATH 181. Corequisite: CMPUT 379.

LECTURE EB1 (75596)

2027-01-04 - 2027-04-09
TR 11:00 - 12:20

LECTURE B1 (77366)

2027-01-04 - 2027-04-09
TR 11:00 - 12:20

LAB H02 (77457)

2027-01-04 - 2027-04-09
F 14:00 - 16:50

LAB EH02 (77490)

2027-01-04 - 2027-04-09
F 14:00 - 16:50

LAB H01 (78403)

2027-01-04 - 2027-04-09
W 17:00 - 19:50

LAB EH01 (78404)

2027-01-04 - 2027-04-09
W 17:00 - 19:50



CMPUT 379 - Operating System Concepts

3 units (fi 6)(EITHER, 3-0-3)

Introduction to the structure, components, and concepts behind modern general-purpose operating systems. Processes: process state transitions; operations on processes; interrupt processing; multiprocessor considerations; resource allocation; synchronization; critical sections and events; semaphores; deadlock: avoidance, detection, and recovery; memory management; virtual memory; paging and segmentation; page replacement strategies; working sets; demand paging; process scheduling; scheduling algorithms; file system functions; file organization; space allocation; virtual machines. Prerequisites: CMPUT 201 and 204, or 275; one of CMPUT 229, E E 380 or ECE 212.

LECTURE EB1 (77541)

2027-01-04 - 2027-04-09
MWF 09:00 - 09:50

LECTURE B1 (77571)

2027-01-04 - 2027-04-09
MWF 09:00 - 09:50

LAB H01 (75599)

2027-01-04 - 2027-04-09
M 14:00 - 16:50

LAB EH02 (77485)

2027-01-04 - 2027-04-09
T 17:00 - 19:50

LAB H02 (77572)

2027-01-04 - 2027-04-09
T 17:00 - 19:50

LAB EH01 (77808)

2027-01-04 - 2027-04-09
M 14:00 - 16:50

LAB H03 (78504)

2027-01-04 - 2027-04-09
R 14:00 - 16:50

LAB EH03 (78505)

2027-01-04 - 2027-04-09
R 14:00 - 16:50