CSC 231: Computer Systems

Syllabus

Course Information

Required Materials

Resources and Accessibility

Course Description

In this course, we will learn fundamental concepts of modern computer systems. Unlike courses in Computer Organizations, Operating Systems, and Computer Architecture, we will be approaching these concepts from the perspective of system users rather than system builders. This will help us to understand how various computer system components, including CPU, memory, storage, and networking, work. Throughout the course, we will learn to use assembler language and C language to explore and observe specifically how computer systems interpret and execute programs. With the knowledge learned from this course, you will be able to build programs that are more efficient and have better performance.

Prerequisites

Learning Objectives

Course Student Learning Outcomes (CSLO)

  1. Be able to understand and manipulate the byte-representation of different data types (int, float, char …)
  2. Be able to understand simple segment of Assembler codes.
  3. Be able to understand how processes are loaded into memory and memory placements of stack, heap, and code within the virtual memory.
  4. Be able to understand the tradeoff in accessing data stored in various memory hierarchical levels.
  5. Be able to understand how simple network communication works within the Linux operating system.
  6. Be able to understand how to perform various debugging and optimization techniques.
  7. Be able to understand how layered service designs and API works from a systems programming perspective.

    CS Program Objectives (CSPO)

  8. Be able to apply theory, techniques, and methodologies to create and/or maintain high quality computing systems that function effectively and reliably in the emerging and future information infrastructure (CSLO 1, 2, 3, 4, 5, 6, 7).

    CS/ABET Program Outcomes (ABET)

  9. ABET 1: Analyze a complex computing problem and to apply principles of computing and other relevant disciplines to identify solutions (CSLO 1, 2, 3, 4).
  10. ABET 2: Design, implement, and evaluate a computing-based solution to meet a given set of computing requirements in the context of the program’s discipline (CSLO 5, 6, 7).

Certificate in Computer Security Program Outcomes

  1. Analyze and resolve security issues in network and computer systems to secure an IT infrastructure

Assessments and Grading

Method of Evaluation

```{list-table} Method of Evaluation :header-rows: 1 :name: method-of-evaluation

Grade Scale

Refer to the Grading Information section section of the Undergraduate Catalog for description of NG (No Grade), W, Z, and other grades.

Assessments

Midterm and Final Exam

Lateness Policy:

{!assets/text/policy.md!} {!assets/text/distance_education.md!}