This course provides students with the knowledge and skills necessary to build a foundation in system programmings for Electrical Engineering, especially focused on operating systems and implementation. Topics include an overview of the components of an OS, concurrency, synchronization, processes, memory management, I/O devices, and file systems.
The objective of this course is to understand the basic principles and hardware structures of computer systems including personal computers and workstations, and to learn how to design computers. This course covers data representation, CPU organization, instruction classification, language processing of assemblers and compilers, pipelining for performance enhancement, memory hierarchy, cache memory, and IO peripheral devices. In addition, high-performance computer systems are to be introduced.