Computer Science Graduate Student Group
(CSGSG)


Orientation Officers and Appointees Social Activities Links and References Concerns Form

Undergraduate Prerequisite Course Descriptions:

It is strongly recommended that you have taken these courses before coming to grad school, however it is by no means an absolute requirement. Some students come from different backgrounds other than Computer Science, so may not have taken any of these classes. Upon arriving at UVa, you will meet with a faculty advisor who will help determine whether or not you should take the classes listed below.

  • CS 302 Discrete Mathematics II: Introduces computation theory including grammars, finite state machines and Turing machines; and graph theory.
  • CS 333 Computer Architecture: Includes the organization and architecture of computer systems hardware; instruction set architectures; addressing modes; register transfer notation; processor design and computer arithmetic; memory systems; hardware implementations of virtual memory, and input/output control and devices.
  • CS 414 Operating Systems: Analyzes process communication and synchronization; resource management; virtual memory management algorithms; file systems; and networking and distributed systems.
  • CS 415 Programming Languages: resents the fundamental concepts of programming language design and implementation. Emphasizes language paradigms and implementation issues. Develops working programs in languages representing different language paradigms. Many programs oriented toward language implementation issues.