This course introduces students to the usage and administration of the UNIX operating system. The course will emphasize end-user tools and commands for basic file manipulation, editing, compilation, and debugging, as well as special features of the UNIX shell environment. Basic system administration will also be covered. Students will learn through a combination of traditional lectures, hands-on laboratory sessions, and individual assignments.
email: cs2204@courses.cs.vt.edu,bowman@vt.edu
office: Torgersen 3030A (enter through the door marked 3050, then turn left, through the lab)
phone: (540) 231-2058 (email is the preferred method of communication; only call with time-critical matters)
office hours: Mondays 1:30-3:00, Thursdays 3:30-5:00, or by appointment if you cannot come at the posted times
The following textbook is required:
The book above is a reference to all of the basic Linux commands and shells, as well as many common tools, but it is NOT a traditional textbook. If you feel that you need a textbook to supplement the course notes and lab sessions, I recommend the following:
http://courses.cs.vt.edu/~cs2204/spring2005/
Each student enrolled in the course will be placed on an email listserv. The class email listserv will be limited to announcements posted by the instructor or teaching assistants.
Students may also monitor and use the online forum for CS 2204.If you have a question or comment related to the class that is of general interest, feel free to post it on the forum. The TAs and instructor will also monitor the forum and respond to questions there. Forum posts must remain on-topic and appropriate. The instructor reserves the right to remove from the forum any student not using it appropriately.
If you have a question for the instructor or TAs, send it to cs2204@courses.cs.vt.edu. Questions (and answers) of relevance to the entire class will be posted to the class listserv by the instructor or TAs.
Students will be able to check grades online via the Blackboard system. Students must self-enroll for the Blackboard site for this class by going to http://learn.vt.edu. An announcement will be posted when the first grades are available.
Grading
will be based on:
Attendance at all classes is necessary for students to succeed in this course. Attendance will be taken at lab sessions, either by calling the roll or through a quiz. Your attendance grade will be calculated as follows: ((14-number_absences)/14)*10. Attendance at lecture is not required (the roll will not be called), but students are strongly encouraged to attend lecture sessions.
Short quizzes will
be given during lab sessions throughout the semester. Quizzes may cover any
material up to and including the week before the quiz is given. Quizzes will
not cover information discussed for the first time at the previous class
meeting on Monday. There will be between 8 and 12 quizzes. Quizzes will
be taken using the Blackboard system.
The majority of your grade will come from individual assignments in the form of homework or programs. There will be four or five programming assignments plus several smaller homework assignments. The number of points each assignment is worth will be indicated on the assignment description. For a list of current assignments, see the assignments page. Assignments will be turned in electronically. Information on electronic submission will accompany each assignment. No late submissions of homework or programs will be accepted. The system will automatically stop accepting assignments at the deadline. Keep backup copies of all your submissions until the end of the semester.
A short final exam will be given during the last lecture session on Monday, May 2, 9:05-9:55 AM. Note that this is not the scheduled common-time exam period. The exam will be multiple choice and cover material from the entire semester. The final exam will be taken using an opscan form. Bring a #2 pencil to the final exam.
Here is the final exam review page.
All lab sessions will use personal computers running Mandrake Linux 10. All homeworks and programming assignments will be expected to run under this operating system as well. You are encouraged to install Mandrake on your own machine as well. The CS department offers downloads, CDs and some installation help on this page. Installing Linux can be a tricky task, and differs widely depending on your own system configuration. The Virginia Tech Linux/UNIX User's Group is available to help you with this process. You can sign up for one of their mailing lists or for an “install-fest". Having Linux installed on your personal machine will help you to complete assignments accurately in this course, and will also be useful for future CS courses. If you decide not to install Linux, you will be able to access machines in the undergraduate UNIX lab by remote login 24 hours a day/7 days a week.
Lab sessions will be held in the UNIX laboratory, McBryde Hall room 124. The lab has 31 Linux workstations. This means that each of you should have a personal machine during the 1-hour lab session each week. For this reason, it is important that you attend the lab session in which you are enrolled. If you must attend a different lab session during a particular week, clear it with both your lab instructor and the instructor of the lab you want to attend. If there are no empty seats, you will not be allowed to attend that lab session. Lab sessions will generally consist of a quiz on the previous week's material (not every week), a brief review of the lecture, and a hands-on assignment allowing you to try the concepts, commands, tools, etc. discussed in the lecture.
Lab
hours and other lab information are posted on the CS
lab home page.
Attendance at all classes is necessary for students to succeed in this course. Attendance at lab sessions is required. However, attendance at lecture sessions is not required (the roll will not be called). If you must miss your assigned lab session, arrange with your lab instructor beforehand to sit in on a different session. No makeup quizzes will be given unless pre-approved by the instructor. If you miss lecture, it is your responsibility to obtain notes, handouts, and other information from your classmates. Do not be late to class! If you are tardy because of extenuating circumstances, you should sit in the empty seats near the upper door so as not to distract your classmates.
Do not send general questions about homework assignments, quizzes, class content, etc. directly to the instructor or the TAs. Send email to cs2204@info.cs.vt.edu. This email is read by the instructor and all TAs. In your email, please include your name, student ID number, and the CRN of the lab section you attend (seethe list above).
All work in this course is to be your own. You may not copy code or use the structure or organization of another student's program. You may not use code obtained from the Internet or from students who have taken the class in previous semesters. You will be required to sign an honor code statement on all tests, quizzes, and programs.
If you have any special needs or circumstances (disability accommodations, religious holidays that will cause you to miss class, etc.) please feel free to email the instructor or visit during office hours.