|
This page documents what we do in class. It contains C programs that we will discuss in class, reading assignments from our textbook, simple homework exercises that you can work on for practice and exam preparation (not for credit), links to other sources of information, etc.
The reading assignments and practice problems are listed by the date on which they were assigned. The sample program files are listed by the date on which they were used. When you are viewing a source code page, you can use your browser's "File -> Save As..." menu item to save a copy of the code on your computer. It is a good idea for you to "play" with these example programs; compile them, run them, make simple changes to them and compile and run them again.
|
- Wednesday, May 4.
- Remember that the second exam is during final exam week. The exam is scheduled for Friday, May 13, from 10:30 am - 12:30 pm
- Here is a list of Review Problems for the second exam.
- Wednesday, April 27.
- Read Chapter 8, Section 8.2 (pages 352-371) and Section 8.5 (pages 379-380) from the textbook.
- Look at the following problems at the end of Chapter 8, Problems 8.1, 8.2, 8.4, 8.5, 8.6, 8.10, 8.13, and 8.18.
- Here are a few MSDN articles about Windows memory management.
- Monday, April 25.
- See the homework page for your last homework assignment.
- Here is a zip file containing some figures and tables from Chapter 8 of the textbook.
- Wednesday, April 20.
- Here is a zip file containing some figures and tables from Chapter 7 of the textbook.
- Monday, April 18.
- See the homework page for your eighth homework assignment.
- Read Chapter 7, Sections 7.3-7.4 (pages 317-322) and Appendix 7A (pages 326-331) from the textbook.
- Look at the following problems at the end of Chapter 7, Problems 7.1, 7.5, 7.6, 7.11, 7.12, and 7.14.
- Read Chapter 8, Section 8.1 (pages 333-352) from the textbook.
- Monday, April 11.
- See the homework page for your seventh homework assignment.
- Look at the following problems at the end of Chapter 6, Problems 6.1, 6.2, 6.4, 6.5, 6.16, 6.17.
- Read Chapter 7, Sections 7.1-7.2 (pages 303-316) from the operating systems textbook.
- Wednesday, April 6.
- Monday, April 4.
- Read Sections 6.1-6.6 (pages 256-279) from the operating systems textbook.
- Here is a zip file containing some figures and tables from Chapter 6 of the textbook.
- Wednesday, March 23.
- NOTE: The first exam will be postponed one week to Wednesday, March 30 (instead of today, as stated in the syllabus).
- Here is a list of Review Problems for the first exam.
- The following three files demonstrate a simple producer-consumer example.
- Monday, March 21.
- NOTE: The first exam will be postponed one week to Wednesday, March 30 (instead of this Wednesday, as stated in the syllabus).
- See the homework page for your sixth homework assignment.
- Read Chapter 5, Section 5.4 (pages 227-234) from the operating systems textbook.
- Look at the following problems at the end of Chapter 5, Problems 5.2, 5.3, 5.4, 5.8, 5.9, 5.12 and 5.14.
- The following two files demonstrate a very simple producer-consumer example.
- The following three files demonstrate a simple producer-consumer example.
- The following file shows how semaphores can be used to create a synchronization pattern that is different from either the "critical section" or "producer-consumer" patterns.
- Wednesday, March 9.
- Read Appendix A.2 (pages 734-743) from the operating systems textbook.
- Read this recent and very interesting article about the need for concurrency in modern software. This article tries to explain why more programmers will need to understand, and be able to use, concurrency.
- Monday, March 7.
- Read Appendix A.2 (pages 734-743) from the operating systems textbook.
- The following two files demonstrate how the Intel instruction set supports mutual exclusion (Section 5.2 in the textbook). Each file shows a way to implement a semaphore using some inline assembly language.
- Wednesday, March 2.
- Read Chapter 5, Sections 5.3-5.4 (pages 215-234) and Section 5.6 (pages 241-245) from the operating systems textbook.
- Here is a zip file containing some figures and tables for Chapter 5.
- Monday, February 28.
- Read Chapter 5, Sections 5.1-5.2 (pages 201-215) from the operating systems textbook.
- Here are some Win32 examples of thread concurrency.
- Wednesday, February 23.
- See the homework page for your fifth homework assignment.
- Read Chapter 5, Sections 5.1-5.2 (pages 201-215) from the operating systems textbook.
- Look at the following problems at the end of Chapter 4, Problems 4.1, 4.2, 4.4, 4.5, and 4.7. These are the kinds of problems that might be on the mid-term exam.
- Monday, February 21.
- Read Chapter 4, Sections 4.3-4.6 (pages 176-196) from the operating systems textbook.
- Here is a zip file containing some figures for Chapter 4.
- Here are a few Win32 programs that create threads.
- Wednesday, February 16.
- See the homework page for your fourth homework assignment.
- Here are three programs that can be used to experiment a bit with processes. Run them by themselves and in various combinations and watch their statistics with the Windows Task Manager.
- Monday, February 14.
- Read Chapter 4, Sections 4.1-4.2 (pages 157-176) from the operating systems textbook.
- Here is a zip file containing some figures for Chapter 3.
- Look at the following problems at the end of Chapter 3, Problems 3.1, 3.2, 3.3, and 3.4. These are the kinds of problems that might be on the mid-term exam.
- Here is a Win32 program that creates processes.
- Wednesday, February 9.
- Read Chapter 3, Sections 3.3-3.4 (pages 126-143) from the operating systems textbook.
- The most important book about the internals of the Windows operating system is Inside Windows. The chapter from this book on processes and threads is conveniently available for reading over the Internet.
- Monday, February 7.
- See the homework page for your third homework assignment.
- Read Chapter 3, Sections 3.1-3.2 (pages 106-126) from the operating systems textbook.
- Here are some more references for buffer overflows.
- Wednesday, February 2.
- Here are some reference to the assembly language syntax used by the Lcc-Win32 compiler and how it differs from Intel syntax.
- Monday, January 31.
- See the homework page for your second homework assignment.
- Here are some programs that demonstrate ideas about how C (and also C++) calls functions.
- Wednesday, January 26.
- Read Appendix 1B (pages 46-50) from the operating systems textbook.
- Read Chapter 2, Sections 2.1-2.4 (pages 52-81) from the operating systems textbook.
- Here are some C programs that demonstrate ideas about the "C run time" system.
- Monday, January 24.
- Print and study this handout about variables and the C run time system. Use a book about C to familiarize yourself with ideas and terms mentioned in the handout.
- Wednesday, January 19.
- Read Chapter 1 (pages 2-37) from the operating systems textbook.
- Look at this brief explanation of why we need operating systems.
- You might want to browse this web site, created by the author of our textbook for operating system students.
- Be sure to look at the homework assignment page. Your first assignment is already listed there.
- Here are some simple C programs that demonstrate some ideas about pointers.
|
|
|
|