Its topics include time sharing methods of memory allocation and protection, files, CPU scheduling, input-output management, interrupt handling, deadlocking and recovery and design principles. This course also covers the system call interface to the system kernel and various interprocess communication schemes. This an advanced programming course in which students work on large scale individual or team programming projects and make a formal presentation on their work. The course discusses program development, methodologies and strategies. This course presents theory of compiler design, syntax-directed translation, and code generation.
Students design a compiler for a subset of a high-level programming language.
This course provides an introduction to computer organization. Students are exposed to the register level archit ecture of a modern computer and its assembly language. This course is not open to students who have taken 0704.204 Assembly Language Programming. This course teaches students how to use microcomputers effectively. Students learn about computer hardware and how it functions with an operating system.