Instructor: Jim Conrad
Kount Tutoring Center Schedule: https://coen.boisestate.edu/cs/computer-science-tutoring-center-cstc/
Getting Assistance and Tutoring Schedule
Most student questions are of general interest to the whole class as others have or will have the same issue. Please consider posting your questions on our piazza site. Many it-doesn’t-work questions benefit from screenshots illustrating how your program fails as well as a snippet of your suspicious source code. I consider posts to piazza to be the same as in-class questions, not cheating, as the question, discussion and answer enlighten the entire class.
A few questions, especially those that require interactive use of the debugger, can’t be easily answered on-line. You’ll want to take these to the Kount Tutoring Center (CCP241). The CS253 tutoring schedule is posted on–line. Warning: The tutors are often swamped with questions in the days before assignments are due.
- Kernighan and Ritchie. The C Programming Language. ISBN 978-0131103627.
- Meclenburg. Managing Projects with GNU Make. Online: http://www.oreilly.com/openbook/make3/book/index.csp
- gdb: https://www.tutorialspoint.com/gnu_debugger/gdb_commands.htm
- The CS-HU 153 prereq and CS-HU 250 coreq are important!
- The Kernighan and Ritchie book is widely known as “K&R” and is required. There is a Kindle edition.
- We use the piazza site for discussing the reading materials, projects, and conducting in-class polls. Please bring to class a laptop, or a phone with the piazza app installed, to earn extra credit from the polls.
- We use blackboard for the in-class quizzes. Please bring your laptop or a phone with the blackboard app to class on quiz days.
|1||January 15, 2019||Syllabus, K&R Ch1||Syllabus, review and helloworld||P1 - cch|
|2||January 17, 2019||Intro to C Programming Language||Q1: Syllabus|
|3||January 22, 2019||Meclenburg Ch1 and Ch2||Makefiles and gcc|
|4||January 24, 2019||K&R Ch2||Variables, strings, pointers and fgets||Q2: L01..L03|
|5||January 29, 2019||Types, strings, arrays, const & bitwise ops||P2 - match|
|6||January 31, 2019||K&R Ch4||Functions and Program Structure||Q3: Makefiles|
|7||February 5, 2019||K&R Ch5||Pointers and Arrays|
|8||February 7, 2019||Function Pointers||Q4: K&R Ch1..2|
|9||February 12, 2019||N/A||Buffer Overflow||P3 - sed253|
|10||February 14, 2019||Debugging and String Manipulation Examples||Q5: K&Amp;R K&R Ch4 and Function Pointers|
|11||February 19, 2019||K&R Ch6||Structures|
|12||February 21, 2019||K&R Ch6||Structures||Q6: K&R Ch5|
|13||February 26, 2019||K&R Ch7||Input and Output||P4 - smash1|
|14||February 28, 2019||K&R Ch8||Input and Output||Q7: K&R Ch6|
|15||March 5, 2019||Debugging and Valgrind|
|16||March 7, 2019||Processes, fork, exec, stack, heap, text, data||Q8: K&R Ch7 and Ch8|
|17||March 12, 2019||https://www.gnu.org/software/libc/manual/html_node/Processes.html#Processes||Project 5||P5 - smash2|
|18||March 14, 2019||Signals, alarms, segfault|
|19||March 19, 2019||Spring Break|
|20||March 21, 2019||Spring Break|
|21||March 26, 2019||https://www.gnu.org/software/libc/manual/html_node/Signal-Handling.html#Signal-Handling|
|22||March 28, 2019||https://www.gnu.org/software/libc/manual/html_node/Pipes-and-FIFOs.html#Pipes-and-FIFOs||Pipes, IPC||Q9: Processes|
|23||April 2, 2019||http://tldp.org/HOWTO/Program-Library-HOWTO/shared-libraries.html||Libraries, makefiles||P6 - smash3|
|24||April 4, 2019||Threads||Q10: Signals|
|25||April 9, 2019||https://computing.llnl.gov/tutorials/pthreads/||Project 7|
|26||April 11, 2019||Synchronization, races, corruption, deadlock, livelock||Q11: Pipes & Libraries|
|27||April 16, 2019||P7 - smash4|
|28||April 18, 2019||Q12: Threads|
|29||April 23, 2019|
|30||April 25, 2019|
|31||April 30, 2019|
|32||May 2, 2019|