Foundations of computer systems encompassing processors, networks, storage, and computing frameworks. Discussion of processors, cores, and co-processors (GPUs, TPUs). Speed differential across the memory hierarchy and the implications of caching. Data structures for storage systems. Overview of parallel and distributed computing frameworks. Future computing systems including neuromorphic computing.
CS 162 (CS1--Introduction to Java Programming) or CS 163 (CS1--No Prior Programming Experience) or CS 164 (CS1--Prior Programming Experience); with a minimum grade of C.; Sophomore standing.; Credit not allowed for both CS 250 and CS 280A1.
Textbooks and Materials
Please check the CSU Bookstore for textbook information. Textbook listings are available at the CSU Bookstore about 3 weeks prior to the start of the term.
Russell Wakefield has been an instructor in the Computer Science department at Colorado State University since 2008. He has a BS and a MCS degree in Computer Science; his research areas include database systems, operating systems, and distributed systems. He has over 25 years of industry experience in systems programming and management at corporations including Control Data Corporation, Pyramid Technology, Evans & Sutherland, and most recently 7 years as Director of Engineering at Cisco Systems.