May 09, 2025  
2024-25 Catalog 
    
2024-25 Catalog [ARCHIVED CATALOG]

Add to Favorites (opens a new window)

CS 350 - Systems Programming


5 CR

This course provides an introduction to system-level software development. Students will learn low-level programming in languages like C and assembly, explore operating systems, delve into security measures, and optimize system performance. The course provides hands-on experience in designing device drivers and mastering parallel programming.

Prerequisite(s): CS 300  with C or above

Course Outcomes
  • Demonstrate a solid understanding of fundamental principles in systems programming, including operating systems, hardware interaction, and system-level software.
  • Apply low-level programming languages such as C or assembly to develop system software and perform hardware-level tasks.
  • Analyze and optimize the performance of system software, identifying bottlenecks and efficiency improvements.
  • Design and implement system-level software components, including device drivers, file systems, and memory management.
  • Implement concurrency control mechanisms and synchronization techniques for multi-threaded and parallel programming.



Find out when this course is offered




Add to Favorites (opens a new window)