George Markowsky
University of Maine
1. To teach you about some of the important aspects of operating systems.
2. To teach you about unix and Linux, along with some of their utilities.
3. To show you how the unix utilities form a powerful problem solving environment.
4. To introduce you to some of the unix programming languages.
5. To improve your capabilities as a programmer.
1. Some programming experience, preferably in C or C++.
2. An interest in learning about unix/Linux.
3. You must have access to hardware on which you can install and run Red Hat Linux Version 9. If you don’t have such hardware, please do not take this course. You will learn a lot more by running your own linux workstation.
Your COS 231 final grade will be based on the average of all your homework grades. There will be no exams in this course. The list below shows how your final grade is computed
|
A |
90 or above |
C |
70 to 72 |
|
A- |
85 to 89 |
C- |
65 to 69 |
|
B+ |
83 or 84 |
D+ |
63 or 64 |
|
B |
80 to 82 |
D |
60 to 62 |
|
B- |
75 to 79 |
D- |
55 to 59 |
|
C+ |
73 or 74 |
F |
54 or below |
1. I want people to work on the homework individually. You can talk to each other and give help, but this help should not take the form of letting other people copy your work. It is important that you understand how to do all the problems on your own.
2. Cheating has become widespread, but ultimately it is counterproductive. You really should focus on doing your own work so that you actually learn the subject. Cheating includes such things as copying other students' homeworks or submitting work found on the web as one’s own work. . Cheating is bad for the class and bad for you. I am assuming that you took this course to learn how to make linux work for you, so it is not clear how you expect this to happen if you don’t do the work yourself. I will take action against people who cheat.
3. Homework grading will be strict since the goal is to make you more careful. Errors are the source of much mischief, so it is important to reduce them as much as possible. Even minor arithmetical mistakes will result in points being lost, so do your work carefully.
4. If a problem asks you to write a program, a function or a procedure, always submit a listing and output, even if the problem does not explicitly ask for these. Since you will be submitting your homeworks electronically, you will not be able to submit handwritten code (SCANS of handwritten code are not acceptable).
5. If your programs have bugs, I expect you to make a reasonable effort to find the bug on your own. I will be happy to help you find problems in your programs, but you must supply evidence that you have tried to find the problem on your own and the program I see should have evidence of your efforts to debug it.
6. If you run out of time and must turn in a program that doesn’t run, submit enough material to explain what you have done as well as a listing. Look up an error messages in the Help facility and try your best to solve the problem on your own.
7. Be sure that your listings include comments that explain what you are doing if it is not completely obvious. It is up to you to explain what you are doing.
8. If you do not understand a problem get a clarification from me. Do not waste a lot of time working on something that you don't understand.
9. There will be due dates and last dates for each homework assignment. Homeworks not completed by the last date will automatically get a grade of 0. The purpose of the due date is to help you stay on a reasonable schedule.
Because of a last minute switch in texts at the UMaine bookstore, and because of a new version of Red Hat Linux now being available, people can use one of the following text books for this course. You only need to buy one of these texts. The texts are: Red Hat Linux 9 Bible by Christopher Negus, Wiley, 2003, Red Hat Linux Bible Fedora and Enterprise Edition by Christopher Negus, Wiley, 2004, and Red Hat Linux 9 Unleashed by Bill Ball and Hoyt Duff, Sams Publishing, 2003. There will also be some notes posted on my website for topics not covered in the textbook, and we will also use resources from the web.
|
Office |
237 Neville Hall |
|
Office Hours |
By appointment |
|
Phone |
581-3940 |
|
|
markov on any CAPS or CS Dept. Network |
I will not be keeping regular office hours during the
summer, but I will be around the office rather often. If you need to see me or
the grader, please contact us directly to make an appointment. You can check by
either calling my number or the Computer Science Department (581-3941). If you
have problems with this course and need help come in to see me
immediately. Don't fool around until the
end of the semester and then try to learn all the material in a week.
There are no scheduled class meetings at this time. The primary means of communication will be via e-mail. You can call me if you need to speak to me, although I recommend using e-mail first to set up a time to speak over the phone.
I will be e-mailing you information directly, as well as
posting it on the website. If there is enough interest, I will set up some sort
of class discussion area on the web. Please let me know if you would be
interested in having such an option.
Jeremy Logan (Jeremy_Logan@umit.maine.edu) will be the grader for this course. If you have any questions about how a particular homework was graded, please send an e-mail to Jeremy first. If you and he cannot resolve the matter satisfactorily, then contact me.
If you have a legitimate disability that is interfering with your performance in this course, please let me know about it. I will try to accommodate it as much as possible.
Each homework will have a due date and a last date. The due date is when you should try to submit your homework. The last date is the date after which you will receive a 5 points per week penalty for lateness. If there are extenuating circumstances (medical, professional, etc.) please contact me so we can work out some scheme. The main purpose of these dates is to have you working smoothly throughout the semester, and to prevent massive cramming at the end.
The following shows roughly the order in which we will go through the book(s). This is all variable and subject to change. I will indicate roughly which chapters go with which topic. The two books by Negus have the same chapter structure and I will just use N to represent them. The book by Ball and Duff I will just represent by BD. The numbers following the letters represent chapters in the books.
|
Week of 5/10 |
Installing Red Hat 9 and Basic Configuration (N 1-2; BD 1-4) HW-1 Assigned |
|
Week of 5/17 |
Installing Red Hat 9 and Basic Configuration (N 1-2; BD 1-4) |
|
Week of 5/24 |
First Steps with Linux (N 3-5; BD 5-6) HW-2 Assigned, HW-1 Due |
|
Week of 5/31 |
First Steps with Linux (N 3-5; BD 5-6) |
|
Week of 6/7 |
Document Preparation and Games (N 6-7; BD 25, 27) HW-3 Assigned, HW-2 Due |
|
Week of 6/14 |
The Web & HTML (N 8-9, BD 26, Notes) HW-4 Assigned, HW-3 Due |
|
Week of 6/21 |
Basic Administration (N 10-11; BD 7-10) HW-5 Assigned, HW-4 Due |
|
Week of 6/28 |
Scripts Etc (N 12-13; BD 11, 22, Notes) HW-6 Assigned, HW-5 Due |
|
Week of 7/5 |
Computer Security (N 14; BD 13-15) |
|
Week of 7/12 |
perl (BD 23, Notes) HW-7 Assigned, HW-6 Due |
|
Week of 7/19 |
Javascript & CGI (Notes) HW-8 Assigned, HW-7 Due |
|
Week of 7/26 |
Finishing Up HW-8 Due this week |