Keith J. O'Hara

teaching

CMSC 328

Embedded Operating Systems

overview | logistics | schedule | assignments | resources

Tentative Schedule (changes frequently)

week date topics readings presentation work assigned
1 9/02/2013 course introduction syllabus;
"The Back of the Envelope" by Bentley;
"The UNIX Time-Sharing System" by Ritchie and Thompson
9/03/2013 hardware & software ch 1-2
9/05/2013 error handling; c for java programmers ch. 3
2 9/09/2013 python/c on the pi led
9/10/2013 pointers; memory protection "An Experimental Time-Sharing System" by Corbato, Daggett and Daley; K&R
9/12/2013 structures and arrays; stack overflow K&R; "Reflections on Trusting Trust" by Ken Thompson Android (keith)
3 9/16/2013 memory allocation ch. 7 & appendix B bmalloc
9/17/2013 protection; rings; system calls ch. 3
9/19/2013 the file ch 4-5 iOS (Mo)
4 9/23/2013 time ch 10-12 evaluating allocators
9/24/2013 debugging & tracing ch 6-9. appendix A
9/26/2013 processes ch 20-21 & 23-25 OSX (Katie)
5 9/30/2013 shells ch. 26-28 shell
10/01/2013 threads ch 29
10/03/2013
6 10/07/2013 synchronization ch. 30-31 thread-safe ring buffers
10/08/2013 semaphores "The Structure of "THE"-Multiprogramming System" by Dijkstra; ch. 32 BSD (Eli)
10/10/2013 scheduling & deadlock ch. 33-35 Linux (Julia)
7 10/14/2013 Fall Break
10/15/2013
10/17/2013 computer organization; libraries ch. 41-42 Plan 9 (Elliot)
8 10/21/2013 assembly Introducing ARM assembly language & ARM assembler in Raspberry Pi – Chapter 1 bbOS
10/22/2013 device drivers; IO
10/24/2013 interrupts BCM2835 Chap. 7 & 13 RISC OS (Oliver)
9 10/28/2013 serial ch 62-63; Appendix D serial
10/29/2013 signals II ch 22
10/31/2013 IPC ch. 43 Windows (Manon)
10 11/04/2013 pipes/fifo ch. 44 UART continued
11/05/2013 sockets ch. 56 & 58
11/07/2013 sockets ch. 59-61 VxWorks (Nurzat)
11 11/11/2013 sockets client-server
11/12/2013 buffering ch. 13
11/14/2013 benchmarks Mac OS (Yu)
12 11/18/2013 memory mapping ch. 49 mmap()
11/19/2013 virtual memory & paging ch. 50
11/21/2013 MS-DOS (Yuexi)
13 11/25/2013 file systems ch. 14-16
11/26/2013 ch. 17-18 QNX (Neil)
11/28/2013 Thanksgiving
14 12/02/2013 file systems fuse
12/03/2013 security ch. 8-9 Solaris (Georgia)
12/05/2013 Project Presentations
15 12/09/2013
12/10/2013 capabilities ch. 38-39 Dartmouth TSS (Maya)
12/12/2013 real-time
16 12/16/2013
12/17/2013 Final Project Presentations
12/19/2013