CMSC 205 Computer Systems (4 Credits) DORDT UNIVERSITY -- SPRING 2022 Lecture (3 credit hours): Lab (1 credit hour): Mondays, Wednesdays, and Fridays at 9:00AM Wednesdays from 3:00 until 5-ish CL0088 I NSTRUCTORS Lecture Portion Nick Breems Email: Phone: Office: Office Hours: Lab Portion nick.breems@dordt.edu (712) 722-6298 SB 2612 Mon, Wed, Fri: 10:00 – 11:00 Tues, Thurs: 3:15 – 4:00 Or by appointment D ESCRIPTION FROM THE CATALOG: An introduction to the organization and inner workings of a modern digital computer and its components. Topics include introductory digital logic and circuits, CPU components, memory systems, input/output, storage systems, and introductory operating systems concepts. Students gain experience in working on computers in the laboratory component of this course. Strong algebra skills required. MORE SPECIFICALLY: This course answers the question “How do computers actually work?” approach the question from two directions: • We’ll In the lecture portion of the course, we’ll take a theoretical, bottom-up approach, starting with how data is represented using bits, continuing through digital logic and simple circuits, to simple CPU architecture and the processor instruction set. From there, we’ll look at memory hierarchies, input/output systems, and beginning operating systems concepts. • A hands-on and practical approach, taken in the laboratory portion, will complement the more theoretical classroom approach. The labs will (mostly) be designed to give you hands-on experience working with PCs, learning how to purchase, install, troubleshoot and repair them in a practical, every day manner. T EXTBOOK AND OTHER RESOURCES Main course text: “The Essentials of Computer Organization and Architecture, 5th edition” by Linda Null and Julia Lobur. Publisher is Jones and Bartlett, ISBN is 978-1284123036. • This textbook is required, and will be used extensively for out-of-class preparations and problem sets. Lab texts: “Mike Meyers' Comptia A+ Guide to Managing and Troubleshooting PCs, 6th Edition (Exams 220-1001 & 220-1002)” (ISBN-13 978-1260455069) and “Mike Meyers' Comptia A+ Guide to Managing and Troubleshooting PCs Lab Manual, 6th Edition (Exams 220-1001 & 220-1002)” (ISBN-13 978-1260454574) O BJECTIVES After completing this course, you should be able to: • • • • • Describe the basic design of a modern computer: [CS, CD] o Data representation o Basic digital logic o Basic processor architecture o Instruction Set Architecture o Memory system organization and addressing Select, install, troubleshoot, and repair computer hardware in a typical residential or business setting. [CR] Analyze the hardware/software interface. [CD] Explain how a computer executes an algorithm. [CS] Assess the nature of algorithmic problem solving and critique its limitations. [CS, RO] F OUR C OORDINATES G OALS The Four Coordinates that structure the entire curricular enterprise at Dordt College all play a role in this class. Of course, in every class some of the coordinates will be more prominent than others. In this course, the coordinates will occur in roughly the following priority order: Creational Structure – This coordinate is the most appropriate category for thinking about questions of “How does that work?” Gaining an understanding of the structures and principles that enable a computer system to function will provide you with additional insight into the workings of God’s creation. Creational Development – Understanding computers often requires us to understand the historical development that produced them. Technology is always influenced by the culture that produces it, and then goes on to influence that culture in return. Understanding this interplay is a central part of understanding the technology. Accounting for the effects of the Fall and working towards Redemption are central to using computers well. Contemporary Response – The use of computer technology is pervasive in our culture, and a great deal of benefit can be gained by employing it appropriately. Learning how to help others use their computers effectively, and to configure, administer, and maintain them, is an important course goal. Religious Orientation – Acknowledging that the whole world belongs to God requires us to examine all aspects of creation in light of His sovereignty, and to “discern the spirits of our times” which pull at our heart commitments. In the case of learning about computer systems, for example, this means paying attention to the technicism and consumerism evident in much of our society, and countering that with a Biblical view of human flourishing. C URRICULAR C ONTEXT • • • • This course is required for all Computer Science majors. This course is a prerequisite for CMSC 340 – Advanced Topics in SystemsLevel Programming. This course is designed to meet a major portion the ACM/IEEE Joint Task Force Computing Curricula guidelines for computer and organization. After completing the course, and in particular the laboratory portion, you should be in a good position to take an introductory certification exam, such as CompTIA’s A+ Certification. Some additional targeted self-study preparation for the exam may be required. A SSIGNMENTS AND E VALUATION The overall semester grade will be assigned using the following percentages: Reading Guides 15% Problem Sets 20% Lab Reports 20% Midterm Exams (2 of them) 26% Final Exam 19% Total 100.00% Grades will be assigned based on the following percentage scale: 94 – 100% 91 – 93.9% 88 – 90.9% 85 – 87.9% 82 – 84.9% 79 – 81.9% 76 – 78.9% 73 – 75.9% 70 – 72.9% 67 – 69.9% 64 – 66.9% 0 – 63.9% A AB+ B BC+ C CD+ D DF Exceptional Good Graduation Average Unsatisfactory Failure READING GUIDES for each assigned reading will be due the day that section is to be discussed. The Reading Guides are intended to: a.) Motivate you to do the readings and b.) Help you get the most out of your time spent reading. They will be graded on a pass/fail basis. A completed Reading Guide, turned in on time, will get 100%. A completed Reading Guide turned in up to one week late will get 75%. Reading Guides that are incomplete or turned in after one week will earn 0%. Reading Guides are to be completed individually. Five PROBLEM SETS will be assigned during the semester. Discussing problems with others is allowed and even encouraged, but the assignments must be completed and handed in individually. When you discuss a problem with someone else, you should not take notes; you must understand it sufficiently well that you can complete the assignment on your own, in your own words. Late problem sets will have 25% deducted. Problem sets will not be accepted more than two weeks late. A written LAB REPORT will be due for each laboratory assignment. There will be two MIDTERM EXAMS and a cumulative FINAL EXAM. E XPECTATIONS , A TTENDANCE AND P ARTICIPATION It will be assumed that you complete all assigned readings before the class period in which they are discussed. The material in the textbook can be quite technical in nature, and you may need to read some sections more than one time to fully digest. Attendance for all class periods is expected, as is participation in classroom discussions. Learning requires more than simply being exposed to the material; retention requires that you actively process the subject. Classroom interactivity not only makes the classroom a more enjoyable place to be, but also significantly improves your long-term learning experience. Mobile phones and tablets are not welcome in class. Your laptop should only be used for directly class-related activities. C ALENDAR Week Day 1 Fri Jan 14 Topic Introduction Read Assignments 2 1.1 - 1.11 2.1 - 2.4 P.S. 1 Given Wed Jan 19 Fri. Jan 21 Historical Development; Computer Models Data Representation; Positional Number Systems, Integers Lab Data Representation; Floating-point, Characters 3 Mon Jan 24 Wed Jan 26 Wed Jan 26 Fri Jan 28 Boolean Algebra Logic Gates and Digital Components Lab Combinational Circuits 3.1, 3.2 3.3, 3.4 4 Mon Jan 31 Wed Feb 2 Wed Feb 2 Fri Feb 4 Sequential Circuits Buffer Lab CPU Organization 3.6, 3.7 5 Mon Feb 7 Wed Feb 9 Wed Feb 9 Fri Feb 11 The “MARIE” Simple Computer Instruction Processing Lab Assemblers, Compilers, Linkers, and Run-time 4.8 4.9, 4.10 6 Mon Feb 14 Wed Feb 16 Wed Feb 16 Fri Feb 18 Instruction Decoding Real-World Processors Lab Instruction Formats 4.13 4.14 Mon Feb 21 Wed Feb 23 Web Feb 23 Fri Feb 25 Buffer/Review Test 1 – Chapters 1 – 4 Lab Addressing 8 Mon Feb 28 Wed Mar 2 Wed Mar 2 Fri Mar 4 Pipelining Memory Addressing and Hierarchy, Caching Lab Caching Schemes 9 Mon Mar 14 Wed Mar 16 Virtual Memory Wed Mar 16 Lab Fri Mar 19 Buffer 10 Mon Mar 21 Memory Management; Compiler considerations; Speculative Execution Wed Mar 23 Input/Output System Wed Mar 23 Lab Fri Mar 25 Bus Control and Operation 6.5-6.6 Mon Mar 28 Wed Mar 30 Wed Mar 30 Fri Apr 1 7.6-7.9 7A 7 11 Mon Jan 17 Wed Jan 19 Hard Drives Drives; Raid; Data Compression Lab Operating Systems 2.5 - 2.7 3.5 4.1 – 4.7 P.S. 1 Due P.S. 2 Given 4.11, 4.12 5.1, 5.2 P.S. 2 Due 5.3, 5.4 Spring Break 5.5 6.1 – 6.3 P.S. 3 Given 6.4 7.1 – 7.5 8.1, 8.2 P.S. 3 Due P.S. 4 Given 12 Mon Apr 4 Wed Apr 6 Wed Apr 6 Fri Apr 8 Operating Systems and Protected Environments Programming Tools Lab Alternative Architectures 13 Mon Apr 11 Wed Apr 13 Wed Apr 13 Fri Apr 15 Buffer/Review Test 2 – Chapters 5 – 8 Lab 8.5, 9.1, 9.2, 9.3 P.S. 4 Due Easter break 14 Mon Apr 18 Wed Apr 20 Alternative Architectures Wed Apr 20 Lab Fri Apr 22 Embedded Systems 15 Mon Apr 25 Wed Apr 27 Wed Apr 27 Fri Apr 29 Buffer Performance Benchmarking Lab Performance Optimization 16 Mon May 2 Wed May 4 Wed May 4 Fri May 6 Storage Interfaces Lab Buffer Exam Review Tue May 10 10:30AM 8.3 8.4 Final Exam Easter break 9.4 – 9.6 P.S. 5 Given 10.1 – 10.3 11.1 – 11.4 11.5, 11.6 13.1-13.6 P.S. 5 Due O THER C OLLEGE M ATTERS S TUDENTS ’ R IGHTS TO A CCOMMODATIO NS Dordt University is committed to providing reasonable accommodations for students with documented qualifying disabilities in accordance with federal laws and university policy. Any student who needs access to accommodations based on the impact of a documented disability should contact the Academic Enrichment Director: Sharon Rosenboom, Academic Enrichment Center, Office: L166, (712) 722-6488, Email: Sharon.Rosenboom@dordt.edu. C LASSROOM A TTENDANCE P ROTOCOL As we begin the Spring 2022 semester, class attendance policies and procedures as outlined in the Student Handbook are in place. To paraphrase the Student Handbook, Dordt University as an institution remains committed to in person instruction for face-to-face courses. As a result, you are expected to be present for every class period and laboratory period. Should you need to miss class for any reason, contact your instructor as soon as possible (either prior to the absence or immediately following). Absences for Dordt-sponsored curricular or co-curricular activities will be communicated by the activity sponsor and are considered excused. Methods of making arrangements for missed work are back to normal (pre-COVID). You are responsible to contact your instructor. Your instructor is not required to provide real time (synchronous) learning for you should you be absent for class for any reason (ex. Zooming into your real time class). Your instructor is also not required to provide asynchronous virtual learning materials for you (ex. recordings of missed classes, powerpoints, other materials on Canvas). While some instructors might utilize some of the synchronous/asynchronous methods of making up work on occasion, you should not expect all instructors to provide these experiences automatically. Methods of making up missed work might include: contacting a fellow student to get notes from class, extensions on assignments or labs, or other methods as determined by your instructor. Making arrangements for missed class work is your responsibility! Please see your instructor’s specific attendance policy. A CADEMIC I NTEG RITY Dordt College is committed to developing a community of Christian scholars where all members accept the responsibility of practicing personal and academic integrity in obedience to biblical teaching. For students, this means not lying, cheating, or stealing others' work to gain academic advantage; it also means opposing academic dishonesty. Academic Dishonesty. Students found to be academically dishonest will receive academic sanctions from their professor (from a failing grade on the particular academic task to a failing grade in the course), who will report the incident and the sanction given to the Student Life Committee for possible institutional sanctions (from a warning to dismissal from the college). Appeals in such matters will be handled by the student disciplinary process as outlined in the Student Handbook. Academic dishonesty at Dordt College includes, but is not limited to, the following behaviors: 1. Stealing/Plagiarizing: copying another's work or ideas and creating the impression that they are one's own by failing to give proper credit or citation. This includes reading or hearing another's work or ideas and using them as one's own; quoting, paraphrasing, or condensing another's work without giving proper credit; purchasing or receiving another's work and using, handling, or submitting it as one's own work. 2. Cheating: unauthorized use of any study aids, equipment, or another's work during an academic task. This includes using unauthorized aids or other equipment during an examination; copying or looking at another individual's examination; taking or passing information to another individual during or after an examination; taking an examination for another individual; allowing another individual to take one's examination; stealing examinations. • All graded academic tasks are expected to be performed on an individual basis unless otherwise stated by the instructor. • An academic task may not be submitted by a student for course credit in more than one course without the permission of all instructors. 3. Lying/Fabricating: the intentional, unauthorized falsification or invention of any information or citation during an academic task. This includes changing or adding an answer on an examination and resubmitting it to change the grade; inventing data for a laboratory exercise or report. 4. Facilitating Academic Dishonesty: knowingly allowing or helping another individual to plagiarize, cheat, or fabricate information.