Recording links for
CS40 Zoom meetings
September 8, 2020 - Google Drive, remote server sputnik.smc.edu, RFCs (request for comment), Wireshark slides, demo of Wireshark exercise
General meeting to troubleshoot virtual machine issues Sunday, 9/13/20
September 15, 2020 - von Neuman slides, "The answer is" posting, Intel manuals selections per readings item in course outline section 3, begin Ch1 (textbook's) slides, demo of computer hardware and I/O modules/expansion circuits, assembly language homework
September 22, 2020 - largely talked about the Chapter 1 textbook author's slides, early portion concerning instruction execution. Touched on multiprocessing and system calls.
September 29, 2020 - caching, interrupts, walk-through of ddd debugger homework to trace execution of 3+2=5, discussion of extra credit issue in the "assembly language" assignment and its resultant 2 versions of the "disassembly" output file -- one version contains a hex 43 instruction while the other has FF C3 instead. In binary, you can see that the latter is the same value as the former with its significant bits left-padded with ones to a size of 64 bits. Left padding with ones (non-intuitive) is how to widen a signed binary number while keeping its value.
October 6, 2020 - demo of data being executed as code, demo of branch prediction as a type of speculative execution by cpus, interrupts, wasting time by busy loops vs sleep system function
October 13, 2020 - summarized the point of the timewaster homework; discussed multiprogramming and threading vs multiprocessing. slides from chapter 2, almost completed
October 20, 2020 - finished chapter 2 slides, covered first part of professor's slides at course outline section 8 link entitled "Processes," showed as examples presence and operation of operating system's fork() function call both in the recent multifork.c homework and the fork1.c "fork sandwich" (shown in the slides), discussed process scheduling and related homework from beginning of textbook chapter 9, mentioned the January 1975 Popular Electronics article featuring the Altair 8800 kicking off the microcomputer era with quotations from pages 33 and 34
October 27, 2020 - slides from textbook Ch 3 about processes, comlementary to mine of the same subject shown last week; emphasis in process states. Explanation of process states homework. Discussed threads, course outline's "operation of threads" link. Did course outline's "top (process display) exercise" as an in-class with student's invited to perform it on their machine as I did on mine. Discussed in general the coverage of the upcoming test.
November 3, 2020 - "linux process scheduling" slides, performed "process scheduling and prioritization exercise" as a demo, performed "deadlock" as a demonstration. Previewed Peterson's algorithm for achieving mutual exclusion.
November 10, 2020 - discussed Peterson's algorithm for mutual exclusion and the related assignment. Covered much of the slides at the course outline link "IPC and mutual exclusion"
November 17, 2020 - concluded "IPC and mutual exclusion slides, on how semaphores can be used to protect shared memory from conflicting simultaneous accesses, another kernel-assisted approach to mutual exclusion to be compared with Peterson's Algorithm. Demonstrated the program in the slides. Began discussion of memory management, course outline section 11's slides at link entitled "Ch 7". Discussed how compilation has stages, masked by gcc which performs them all transparently, link entitled "Symbol management" on main class web page.
November 24, 2020 - symbol management, the supply and demand reconciliation mechanism among object files (textbook appendix 7A). Review of some Chapter 7 topics relating to addressing (translation of a logical address to a physical can be done by constructing it, no need of calculating it.). Discussed the assigned address translation homework. Started Chapter 8 slides, with virtual paging code becomes 1) migrateable 2) fragmentable. Demonstrated operation of virtual memory and its ability to satisfy a program with more memory than the amount of RAM installed in the computer.
December 1, 2020 - devices, filesystems, files. Demonstration of course outline section 13's in-class exercise at link entitled "device vs file." Detailed explanation of structure of ext2 filesystem as basis for homework at course outline section 13's link entitled "ext2 filesystem."
December 8, 2020 - commentary on the class web page posting "'memory3.c' memory exhaustion / virtual mem demo experiment." Demonstration that time required to read the same amount of data from a hard disk is greater if read a little at a time and less if read more at at time or all at once. Covered portions of fileystem slides textbook chapter 12 in course outline section 13, concerning secondary storage management and file system security. Continuation of virtual memory slides textbook chapter 8 course outline section 12. Demonstrated how to perform the page replacement homework. Described upcoming test.