Welcome to CS111ACE ๐Ÿ‘‹

CS111ACE โ„๏ธWinterโ„๏ธ 2024

About CS111ACE ๐Ÿ”

CS111ACE is part of the ACE (Additional Calculus for Engineers) program. This course, in particular, is a supplemental review and problem-solving based class that should be taken concurrently with CS111, Stanfordโ€™s introductory Operating Systems course. CS111ACE aims to provide students with a solid foundation in Computer Systems and fundamental design principles. Read more about the ACE program here!

Schedule ๐Ÿ—“๏ธ

Week 1 Welome! Syllabus + Class Norms
Week 2 Introduction to File Systems
Week 3 File System Optimizations + Crash Recovery

Syllabus ๐Ÿ“„

Adapted from Avery Wangโ€™s ACE Syllabus.

CS 111A - ACE Problem Solving Lab for Operating Systems Principles - Winter Quarter

๐Ÿ”‘Section Info: Tuesday 1:30 - 3:20 pm Pacific | STLC 115
๐Ÿ”‘ Course Assistant (CA): Trip Master
๐Ÿ”‘ CA Contact: trip@cs.stanford.edu (direct message me on Slack for a faster response)
๐Ÿ”‘ Office Hours: Wednesdays 9-11AM in Lathrop 298 every week, Huang Basement at noon on weekends (on a weekly basis)

Overview and Learning Goals
Additional Calculus for Engineers (ACE) is designed to provide the skills and solid foundation in mathematics, computational math in engineering, and computer science to undergraduate students interested in pursuing an engineering degree. The goal of ACE is to increase confidence and increase content knowledge through small group interactive sessions and the academic resources (listed below) provided to students enrolled in the program. CS 111 introduces the basic facilities provided by modern operating systems. The course is divided into three major sections:

File systems: storage devices, disk management and scheduling, directories, and crash recovery.
Concurrency: managing multiple tasks that execute at the same time and share resources. Topics in this section include processes and threads, context switching, synchronization, scheduling, and deadlock.
Memory management: Dynamic memory allocation, dynamic address translation, virtual memory, and demand paging.

CS 111A is designed to (1) review theoretical concepts, and (2) serve as a collaborative lab to explore real code examples based on the concepts from lecture.

Student requirements (for CS111ACE credit)
Attend all CS 111 lectures (although I cannot enforce this easily, I expect you all to be up to date with lectures when you come to class).
Attend all CS 111A sections (required -- see attendance policy for more details).
Encourage other students in their learning. Ask questions and engage in all activities.

Advice for students wishing to succed in CS111
Have a plan for each week's assignments, especially if the assignment takes longer than you were expecting.
Attend all CS 111 sections

Academic Resources
The ACE program is made up of 4 main components:
Weekly section - Tuesday 1:30-3:20 pm (mandatory).
Weekly ACE office hours - Wednesdays in Lathrop 298, 9-11AM.
Midterm/Final review session - TBD (Will poll the class for availability)
Individual meetings by request from the student.

Communication (as of last quarter; subject to change)
Announcements: on the Slack Announcements channel. I will send important announcements via email as well.
General public communication: post in the appropriate Slack channel. Ask your logistical, conceptual, or assignment questions here, and your classmates and I will try to help. You are encouraged to bounce ideas about assignment problems here.
Midterm/Final review session: TBD (Will poll the class for availability).
Individual meetings by request from the student, 1-2X per quarter! Signups will be send out over a calendly-like service.
Communication with instructor: send Trip a direct message on Slack. He will respond generally within 24 hours. Please bear in mind that my response times might be worse at off-peak times (weekends / late at night). If you don't a response in Slack, ping me again. Don't be shy!

Getting Help
Clarification questions about assignments: ask on Ed! Ed is the best place to get clarification questions. These assignments are relatively new, so John is the best source to get clarifications about the assignments!
Questions about being stuck or not sure where to begin: ask on the Slack channel! Your classmates will likely be able to help, and I'll try to guide you to get you started.
More private questions (attendance, grading, etc.): send Trip a private Slack message. Since Trip can't look at code, there is no reason to message Trip privately for help on an assignment. Ask on a public channel so everyone can benefit from your question.
Under no circumstances can I read your code. This is the CS111 policy that every instructors and TA's follow, and I cannot make any exceptions to this rule.

Enrollment, Attendance, and Grading
Enrollment: CS111ACE is offered for 1 unit, and is separately graded from CS111. To be in CS 111ACE and receive one additional unit, you must enroll in CS111ACE using a permission number (which will be distributed to you by me in the first week).
Auditing: auditors will only be allowed if there is classroom capacity for enrolled ACE students. Reach out to Trip in the beginning of the quarter if you are interested in auditing CS111ACE. All materials on the course website are available to the public. Recordings will be reserved for enrolled students.
Section attendance is mandatory: attendance is the only component by which students are evaluated in the ACE program. Failing to abide by the section attendance policies may result in a NC. Students are allowed 1 excused absence (let me know in advance) and 1 unexcused absence during the quarter, where no make up work or reason for absence is required. Any further absences must be approved directly by the ACE Coordinators (see contact information below) Section attendance is mandatory: attendance is the only component by which students are evaluated in the ACE program. Failing to abide by the section attendance policies may result in a NC. Students are allowed 1 excused absence (let me know in advance) and 1 unexcused absence during the quarter, where no make up work or reason for absence is required. Any further absences must be approved directly by the ACE Coordinators (see contact information below) You must pass CS111 to pass CS111ACE. In other words, grades of a C- or above (or grades of a CR) in CS111 are required to get credit for CS111ACE. All other grades (NP, NC, W) will result in NC for CS111ACE. Email Trip if you are getting an incomplete for CS111.
Lateness: arriving to section more than 5 minutes late or departing early counts as an absence and must be excused through makeup work. Any exception to this policy is at CA discretion and should be cleared in advance. For students who join late no additional absences are allowed (without communicating with the ACE coordinators).

Grading
CS111ACE should be taken satisfactory/no credit.

ACE Materials
Section slides are designed to accompany material covered in section worksheets and do not replace the course reader or textbook.

Accessibility
Students who may need academic accommodation based on the impact of a disability must initiate the request with the Office of Accessible Education (OAE). Professional staff will evaluate the request, review appropriate medical documentation, recommend reasonable accommodations, and prepare an Accommodation Letter for faculty. The letter will indicate how long it is to be in effect. Students should contact the OAE as soon as possible since timely notice is needed to coordinate accommodations. Students should also send your accommodation letter to instructors as soon as possible. The OAE is located at 563 Salvatierra Walk (phone: 723-1066, URL: http://oae.stanford.edu).

Contacts
Trip Master: trip@cs.stanford.edu
ACE Course Assistant; primary point of contact for CS111ACE
Nick Troccoli: troccoli@stanford.edu
Contact for questions related to the course, section, exams, homework, etc.
Celine Escarmant & Alka Panda: cce5246@stanford.edu, alkap@stanford.edu
ACE Program Coordinators. Ask them about ACE-related logistical questions that are out of my domain (i.e. excused absences beyond the given 2).
Ngoc Tran: trann@stanford.edu
Student Services Officer for Equity and Inclusion; contact for enrollment and administrative questions
Lourdes Andrade: lourdesa@stanford.edu
Director of Equity and Inclusion Initiatives