CPSC 313_203_2019W

Course Title
Computer Hardware and Operating Systems
Instructor(s)
Course Info
Course Number
CPSC 313
Section
203
Term
Term 2
Location
Building
DMP
Room
310
Dates
Session
2019W
Days
MWF
Time (start)
11:00 AM
Time (end)
12:00 PM
Date (start)
Date (end)
Calendar Description
Instruction sets, pipelining, code optimization, caching, virtual memory management, dynamically linked libraries, exception processing, execution time of programs.
Extended Description

In CPSC 213, you learned how computers execute programs, and how common programming language constructs can be translated into assembly language. You also discussed how to deal with multiples processes and threads, and how you can synchronize their operations. Finally, you discussed virtual memory. In this course, we will dig a bit deeper, and look at how computers are designed, and at the techniques that are used to make them execute the programs we write as quickly as possible. At the end of this course you will be able to:

  1. Describe a possible high-level architecture for a pipelined CPU.
  2. Explain the importance of, and issues with, instruction-level parallelism.
  3. Describe the various types of memory used by modern computers, and explain how the hardware and the operating system cooperate to manage this memory.
  4. Explain the issues that must be considered while designing file systems, and how file systems are managed.
  5. Utilize your knowledge of the CPU and memory systems to optimize C/C++ code and make it run faster.