resources - cbranton/computer-system-concepts GitHub Wiki

Class Resources


Keep In Mind

  1. There is no required text for this course. We will utilize a number of open source resources. 
  2. Most of the topics of this class have been stable for a long time, at least as far as undergraduate courses are concerned. In other words, if you have access to a book on operating systems, computer organization, or C/C++, it will probably work for this course.

Electronics Resources

We will begin studying some of the electronics concepts used in computers. Each of you will need tools and components comparable to what is contained in the Elegoo Uno Super Starter Kit: https://www.elegoo.com/collections/uno-r3-starter-kits/products/elegoo-uno-project-super-starter-kit

It is not necessary to use this particular brand or model. Anything with Arduino, bread board, LEDs, buttons, resistors, and some misc. sensors and motors will do. For example, the official Arduino starter kit: https://store.arduino.cc/usa/arduino-starter-kit would work as well. 

You will want to download the tutorial manual for the Elegoo kit from their download page. https://www.elegoo.com/download/ 
Much of our electronics work will be based on the first 10 lessons or so in that document. We can make adjustments for small differences in components.

Computer Organization Resources

Dive Into Systems. This online book will serve as the closest thing we have to a textbook through about the first half of the course.

Operating Systems Resources

Operating Systems: Three Easy Pieces

C++ Resources

The Rook's Guide to C++

Structured Programming in C++

An Introduction to GCC -- Brian Gough

Other resources

Crash Course Computer Science. A video series covering much of the same material we cover in this class. I will post links to relevant videos in the Module Resources page of each unit.

Human Resource Machine. Game for learning what is essentially assembly programming.

Answers to Common Questions

  1. Do I need my own computer?
    No, you are not required to have your own computer. However, you will need access to a Unix-like operating system. We have installed the Windows Subsystem for Linux on the lab machines. If wish to use a Windows machine, you may wish to do the same. MacOS qualifies as it is.
  2. Why so much different stuff?
    This course combines two subjects that are traditionally taught on their own: operating systems and computer organization (hardware architecture). Each of those classes typically includes material that is only marginally related to the topic, but important. For instance, operating systems courses usually include units on concurrent programming; computer organization courses often cover assembly language programming. It's a lot. 

 

 

 

Drury University Resources


 

Tutoring, Student Resources, & Library Resources

 



Canvas Resources


 

Canvas Resources for Students provides students with the resources they need to successfully use Canvas. The course includes videos, guides, and detailed instructions covering the following topics:

  • Getting Started with Canvas
  • Assignments Discussions, Quizzes, and Grades

Select the button below to access the resource course.

 

Student Resource Course 

 

 

Need immediate support from Canvas?

Click Drury Help Button. Then, click Chat with Canvas Support image

 

⚠️ **GitHub.com Fallback** ⚠️