Revised 2/2023

ITE 221 - Pc Hardware and Os Architecture (3 CR.)

Course Description

Covers instruction about processors, internal functions, peripheral devices, computer organization, memory management, architecture, instruction format, and basic OS architecture. Lecture 3 hours per week.

General Course Purpose

This course is designed to provide students with a basic understanding of both computer hardware architecture and computer operating system architecture.

Course Prerequisites/Corequisites

Prerequisite: ITE 152, or ITE 119 or ITE 115.

Course Objectives

Upon completion of this course, the student will be able to:

  • Explain microprocessors and their instruction set as they relate to computer architecture
  • Explain input/output interfaces as they relate to computer architecture
  • Explain primary memory and techniques of memory management as they relate to computer architecture
  • Explain how computer peripheral devices work and how they interface with the processor unit
  • Explain how data are represented in computers
  • Explain how storage devices work and how they interface with the processor unit
  • Discuss multi-tasking applications on single core and multi core processors and the notion of symmetric multiprocessing.

Major Topics to Be Included

  • Microprocessor and instruction set
  • Memory and memory management
  • Peripheral devices
  • Storage devices
  • Data representation
  • Computer operating system functions
  • Digital Logic and digital components
  • Application Management

Student Learning Outcomes

  • Microprocessor and instruction set
    • Describe the internal organization of a CPU:
      • Central Processing Unit
      • Internal Cache
      • Clock
      • Registers
      • System bus
      • Control Unit
      • Arithmetic and Logic Unit
      • Pipelining of instructions
  • Describe the features of the CPU:
    • Clock rate
    • Cycle time
    • Processing cycle
    • Overflow control
    • Speed
    • Word length
    • Instruction set
      • Instruction set
      • RISC
      • CISC
      • Future trends for CPUs
  • Primary Memory
    • Describe different forms of primary memory (Random Access Memory).
      • Dynamic random-access memory
      • Non volatile RAM used to hold programs - PROM, EPROM and EEPROM
      • Non volatile RAM used to hold data - CMOS Memory with a battery
    • Describe memory applications
      • Buffer
      • Cache
  • Peripheral devices
    • Describe the operation of various physical and virtual peripheral devices, such as:
      • Video Cards,
      • Audio Cards,
      • Network Cards
      • Keyboard
      • Mouse
  • Secondary Memory - Storage devices
    • Describe the function of several magnetic storage devices such as:
      • Electromechanical Drives
      • Magnetic Tape
      • Optical Discs
      • SSD Drives and Flash Drives
  • Data representation
    • Number representation
      • Unsigned Integer
  • Signed Integer (twos complement)
    • Character representation
      • Unicode
      • ASCII
    • Notations
      • Binary
      • Octal
      • Hexadecimal
  • Computer operating system functions
    • Identify the operating system management functions
    • Define the operating system layers
    • Describe resource allocation (single process vs. multiple process)
    • Explain Interrupt processing and scheduling
    • Describe task processing (single-task vs. multitasking)
    • Explain virtual memory
    • Describe memory management issues
      • Memory Leaks
      • Memory fragmentation
      • Protected Memory
  • Boolean Algebra and Digital Logic
    • Recognize Truth Tables for NOT, OR, AND, XOR.
    • Application of bit-wise boolean operations
  • Application Management
    • Understand the difference between Applications, Processes and Threads.
      • Know the purpose of Process Control Blocks
      • Know the purpose of Thread Control Blocks
  • Optional Topics
    • Know the difference between machine code and assembly language and the relationship between the high level language source code and executable binary files.
    • Understand the process of compilation and linking behind the creation of an executable binary file from high-level language source code
    • Be able to apply bitwise Boolean operations with masks to selectively set specific individual bits in a byte to 0 or 1. For example: Use Boolean operations to change the case of ASCII characters.
    • Trends in technology
    • Parallel processor architecture

Required Time Allocation per Topic

In order to standardize the core topics of ITE 221 so that a course taught at one campus is equivalent to the same course taught at another campus, the following student contact hours per topic are required. Each syllabus should be created to adhere as closely as possible to these allocations. Of course, the topics cannot be followed sequentially. Many topics are taught best as an integrated whole, often revisiting the topic several times, each time at a higher level. There are normally 45 student contact hours per semester for a three credit course. (This includes 15 weeks of instruction and does not include the final exam week so 15* 3 = 45 hours. Sections of the course that are given in alternative formats from the standard 16 week section still meet for the same number of contact hours.) The final exam time is not included in the time table. The category, (Other optional content), leaves ample time for an instructor to tailor the course to special needs or resources.

Topic Hours Percent
Class Introduction 1 2.22%
Microprocessors and Instruction Set 6 13.33%
Memory and Memory Structure 3 6.67%
Peripheral Devices 3 6.67%
Secondary Storage Devices 3 6.67%
Data Representation 6 13.33%
Computer Operating System Functions 6 13.33%
Boolean Algebra and Digital Logic 3 6.67%
Application Management 4 8.89%
Exams and Quizzes (not including the Final Exam) 5 11.11%
Additional Topics at discretion of instructor 5 11.11%
Total 45 100%