George Mason University – Graduate Council Graduate Course Approval Form All courses numbered 500 or above must be submitted to the Graduate Council for final approval after approval by the sponsoring College, School or Institute. Graduate Council requires submission of this form for a new course or any change to existing courses. For a new course, please attach a copy of the syllabus and catalog description (with catalog credit format, e.g. 3:2:1). The designated representative of the College, School or Institute should forward the form along with the syllabus and catalog description, if required, as an email attachment (in one file) to the secretary of the Graduate Council. A printed copy of the form with signatures and the attachments should be brought to the Graduate Council meeting. Please complete the Graduate Course Coordinator Form if the proposed changes will affect other units. Note: Colleges, Schools or Institutes are responsible for submitting new or modified catalog descriptions (35 words or less, using catalog format) to Creative Services by deadlines outlined in the yearly Catalog production calendar. Please indicate: New_______ Modify___X____ Delete_______ Department/Unit:___ Computer Science_____ Course Subject/Number:___INFS 515_______________________ Submitted by:____Larry Kerschberg_________________ Ext:_3-1661___ Email:___kersch@gmu.edu_________ Course Title:____ Computer Organization ______________________________________________________________ Effective Term (New/Modified Courses only): ___Spring 2009___ Final Term (deleted courses only):____________ Credit Hours: (Fixed) __3_ (Var.) ______ to ______ Grade Type (check one): ___X __ Regular graduate (A, B, C, etc.) _____ Satisfactory/No Credit only _____ Special graduate (A, B, C, etc. + IP) Repeat Status*(check one): ___ NR-Not repeatable ____ RD-Repeatable within degree ____ RT-Repeatable within term *Note: Used only for special topics, independent study, or internships courses Total Number of Hours Allowed: _______ Schedule Type Code(s): 1._LEC_ LEC=Lecture SEM=Seminar STU=Studio INT=Internship IND=Independent Study 2.____ LAB=Lab RCT=Recitation (second code used only for courses with Lab or Rct component) Prereq ___ Coreq ___ (Check one):_______________________________________________________________ __________________________________________________________________________________________ Note: Modified courses - review prereq or coreq for necessary changes; Deleted courses - review other courses to correct prereqs that list the deleted course. Description of Modification (for modified courses):_ Course Description and Syllabus changed to reflect addition of operating systems concepts to course______ Special Instructions (major/college/class code restrictions, if needed):__________________________________________ Department/Unit Approval Signature:_________________________________________ Date: _____________ College/School Committee Approval Signature:__________________________________ Date:_____________ Graduate Council Approval Date:____________ Provost Office Signature:_________________________________ George Mason University Graduate Course Coordination Form Approval from other units: Please list those units outside of your own who may be affected by this new, modified, or deleted course. Each of these units must approve this change prior to its being submitted to the Graduate Council for approval. Unit: Head of Unit’s Signature: Date: Unit: Head of Unit’s Signature: Date: Unit: Head of Unit’s Signature: Date: Unit: Head of Unit’s Signature: Date: Unit: Head of Units Signature: Date: Graduate Council approval: ______________________________________________ Date: ____________ Graduate Council representative: __________________________________________ Date: ____________ Provost Office representative: ____________________________________________ Date: ____________ COURSE PROPOSAL BY THE DEPARTMENT OF COMPUTER SCIENCE PROPOSAL DESIGNATION Modified Course Description and Syllabus I. CATALOG DESCRIPTION A. INFS 515 – Computer Organization (3:3:0) B. Prerequisite: Undergraduate courses or equivalent knowledge in structured programming in a high-level language. Computer hardware architecture concepts include number systems, machine representation of numbers, instruction set formats; addressing techniques, memory organization, internal processor structure and operation; symbolic assembly language is also covered. Fundamental operating systems concepts include process synchronization and scheduling, inter-process communication, memory management, virtual memory, deadlocks, file I/O and disk management. LINUX Operating System case studies will be examined. Credit cannot be applied to any graduate degree in the Volgenau School or the BS degree in computer science. II. JUSTIFICATION A. Desirability of modifying the course description and syllabus of this course: The changes proposed reflect the changes in the topics to include computer architecture as well as operating systems concepts. B. Relation to other courses: This course is a Foundation Course in MS Programs: Information Systems (MS-IS), Information Security and Assurance (MS-ISA) and Software Engineering (MS-SWE). III. SCHEDULING A. This course is offered every semester. B. The current instructor is Dr. John Masiyowski. Other possible instructors are Dr. Daniel Barbara, and Dr. Robert Simon. IV. SAMPLE SYLLABUS Syllabus: INFS 515 – Computer Organization Course Objectives: This course includes the study computer hardware architecture concepts include number systems; machine representation of numbers; instruction set formats; addressing techniques, memory organization, internal processor structure and operation; and symbolic assembly language is also covered. Fundamental operating systems concepts include process synchronization and scheduling, inter-process communication, memory management, virtual memory, deadlocks, file I/O and disk management. LINUX Operating System case studies will be examined. Topics Covered: The course addresses the following topics: Computer hardware architecture concepts include number systems; Machine representation of numbers; Instruction set formats; Addressing techniques, memory organization, Internal processor structure and operation; Symbolic assembly language. Process synchronization and scheduling, Inter-process communication, Memory management, Virtual memory, Deadlocks, File I/O and disk management. Grading Policy: The grade will be determined by grades obtained in individual assignments, research paper review and report, a group research project, and class participation. Homework: 25% Short Quizzes: 20% Midterm Exam: 25% Final Exam: 30% Sample Schedule: Class 1 2 6 7 Topics Introduction/Course Overview; Computer Organization Data representation in Computer Systems – Part 1 Data representation in Computer Systems – Part 2 Quiz 1 MARIE: An Introduction to a Simple Computer Computer Architecture – Instruction Set Architectures Quiz 2 Memory and Review Mid-Term Exam 8 I/O Architecture and Storage Systems 9 Operating Systems Overview Processes: Description and Control /w Threads Quiz 3 3 4 5 10 11 12 13 14 15 Concurrency: Mutual Exclusion and Synchronization Memory Management: Partitioning, Paging Segmentation Quiz 4 Memory Management: Virtual Memory I/O Management and Disk Scheduling Make-up Course Wrap-Up/Review Final Exam Readings TX1: C1 TX1: C2.1 – 2.4 TX1: C2.5 – 2.7.1 TX1:C4.1-4.13 TX1:C5 TX1:C6.1-6.5 TX1:C7.1-7.3, 7.6, 7.7, 7.9, 7.10 TX2:C2.1-2.4, 2.9 TX2:C3.1-C.6, C4.1, C4.3 TX2:C5.1-C5.3, C5.5-C5.7 TX2:C7 TX2:C8.1-C8.2 TX2:C11.1-C11.7 Textbooks: Required reading: TX1: The Essentials of Computer Organization and Architecture, 2nd Edition, Linda Null and Julia Lobur, Jones and Barlett Publishers, 2006, ISBN 10:0-7637-3769-0 Required reading: TX2: Operating Systems, Internals and Design Principles, 6th Edition, William Stallings, Prentice-Hall, 2009, ISBN-10: 01360006329 Course Description 515 Computer Organization (3:3:0) Prerequisite: Undergraduate courses or equivalent knowledge in structured programming in a high-level language. Computer hardware architecture concepts include number systems, machine representation of numbers, instruction set formats; addressing techniques, memory organization, internal processor structure and operation; symbolic assembly language is also covered. Fundamental operating systems concepts include process synchronization and scheduling, inter-process communication, memory management, virtual memory, deadlocks, file I/O and disk management. LINUX Operating System case studies will be examined. Credit cannot be applied to any graduate degree in the Volgenau school or the BS degree in computer science.