Charles Reiss headshot
CR

Charles Reiss

Assistant Professor
Unit: School of Engineering and Applied Science
Department: Department of Computer Science
Office location and address
Rice 205
85 Engineers Way
Charlottesville, Virginia 22903
Education
B.S. ​Computer Science, Georgia Tech, 2008
M.S. Computer Science, UC Berkeley, 2011
Ph.D. ​Computer Science, UC Berkeley, 2016
Biography

Charles Reiss is an Assistant Professor, specializing in computer systems-related topics.

Before joining UVa, he received in PhD from Berkeley, developing systems to analyze memory requirements in analytics systems like Apache Spark.

CS 2150: Program and Data Representation
Credits: 3
Introduces programs and data representation at the machine level. Data structuring techniques and the representation of data structures during program execution. Operations and control structures and their representation during program execution. Representations of numbers, arithmetic operations, arrays, records, recursion, hashing, stacks, queues, trees, graphs, and related concepts. Prerequisite: CS 2102 and CS 2110, both with grades of C- or higher.
CS 3330: Computer Architecture
Credits: 3
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. Prerequisite: CS 2150 or CS 2501 Topic "DSA2" with a grade of C- or higher. CS 2330 recommended. Students may not receive credit for both CS 3330 and ECE 4435. CPE majors cannot use this course to fulfill their program of study.
CS 4414: Operating Systems
Credits: 3
Analyzes process communication and synchronization; resource management; virtual memory management algorithms; file systems; and networking and distributed systems. Prerequisite: CS 2150 with grade of C- or higher, and CS 3330 or ECE 3430 with a grade of C- or higher.
CS 4630: Defense Against the Dark Arts
Credits: 3
Viruses, worms, and other malicious software are an ever-increasing threat to computer systems. There is an escalating battle between computer security specialists and the designers of malicious software. This course provides an essential understanding of the techniques used by both sides of the computer security battle. Prerequisite CS 3710 or CS 3501 topic "Introduction to Cybersecurity"
CS 4980: Capstone Research
Credits: 1–3
This course is one option in the CS fourth-year thesis track. Students will seek out a faculty member as an advisor, and do an independent project with said advisor. Instructors can give the 3 credits across multiple semesters, if desired. This course is designed for students who are doing research, and want to use that research for their senior thesis. Note that this track could also be an implementation project, including a group-based project. Prerequisite: CS 2150 with a grade of C- or higher
CS 4993: Independent Study
Credits: 1–3
In-depth study of a computer science or computer engineering problem by an individual student in close consultation with departmental faculty. The study is often either a thorough analysis of an abstract computer science problem or the design, implementation, and analysis of a computer system (software or hardware). Prerequisite: Instructor permission.
CS 4998: Distinguished BA Majors Research
Credits: 3
Required for Distinguished Majors completing the Bachelor of Arts degree in the College of Arts and Sciences. An introduction to computer science research and the writing of a Distinguished Majors thesis. Prerequisites: CS 2150 with a grade of C- or higher and CS BA major status.
CS 6890: Industrial Applications
Credits: 1
A graduate student returning from Curricular Practical Training can use this course to claim one credit hour of academic credit after successfully reporting, orally and in writing, a summary of the CPT experience to his/her academic advisor.
CS 7993: Independent Study
Credits: 1–12
Detailed study of graduate course material on an independent basis under the guidance of a faculty member.
CS 7995: Supervised Project Research
Credits: 3
Formal record of student commitment to project research for the Master of Computer Science degree under the guidance of a faculty advisor.
CS 8897: Graduate Teaching Instruction
Credits: 1–12
For master's students who are teaching assistants.
CS 8999: Thesis
Credits: 1–12
Formal record of student commitment to thesis research for the Master of Science degree under the guidance of a faculty advisor. May be repeated as necessary.
CS 9897: Graduate Teaching Instruction
Credits: 1–12
For doctoral students who are teaching assistants.
CS 9999: Dissertation
Credits: 1–12
Formal record of student commitment to doctoral research under the guidance of a faculty advisor. May be repeated as necessary.