Computer Science 2211b
Software Tools and Systems
Programming
Software Tools & Systems Programming
Lectures:
Tu 3:30-4:30pm,
Th 3:30-5:30pm in MC 105b
Interim Instructor: Ali Hamou
–
–
–
–
Office: MC 30
Tel: 661-2111 ext 81108
Email: ahamou@csd.uwo.ca
Office Hours: TBA
Professor: Mahmoud El-Sakka
TA: Liviu-Cornel Tinta ltinta@csd.uwo.ca
TA: Walid Ibrahim wsaad3@csd.uwo.ca
How to Keep Informed
http://www.csd.uwo.ca/courses/CS2211a/
Announcements
Assignments
Lecture notes
Marks
Class information
Supplemental information
Your e-mail account at UWO
Important notices
Assignment receipts
Forward your e-mail if you don’t check it regularly
Texts and References
M. G. Sobell, UNIX System V: A Practical Guide.
–
–
An introduction to Unix
A manual to use Unix
K. N. King, C Programming: A Modern Approach.
–
About C Programming, a little about C++.
Both books are required
Both are available in the UWO book store, the
used book store, and in the Taylor library on 2
hour reserve
Two Keywords for the Course
Unix
–
–
–
–
–
an operating system (OS)
e.g. Solaris, HP-UX, AIX, Irix, Unicos, Dynix,
Free/Open/Net BSD, Linux (Fedora, Mandriva) …
commonalities with DOS, Windows, OS X, ...
has many unique features
widely used in universities and corporations
C
–
–
a programming language
relationship to C++ and Java
Unix vs. Windows
Similar things
– files vs. files
– processes vs. processes (running programs)
– shells vs. command prompt windows
– utilities vs. software applications
Differences
– multiple users
– more stable
– more features of shells
programming
pipes and redirection
regular expressions
Java vs. C
Java
C
1. A programming
language
1. A programming
language
2. Object oriented
2. Function oriented
3. Garbage collector
3. Manage your own
memory
4. No pointers
4. Pointers
5. Better programming
style, security
5. Easier to bring down
your system
6. High level programming
6. Low level programming
Student Evaluation
5 Assignments: 40%
– Lowest one dropped
Midterm: 20%
– Optional? Risk analysis!!
Final exam: 40%
A necessary condition to be passing or higher:
Must get 40% on the final and on the average of your
assignments.
Assignments
Assignments involve
– Concept questions (non-programming)
– Shell programming
– C programming
Programming assignments must be able to
run on the departmental computing
equipment
– You may develop assignments on your home
computer.
– It takes time to get it work at a different
environment.
Assignments
All assignments will be available on the course
website.
– Please monitor these pages closely for updates,
corrections
Assignments are to be done individually.
– Never let others look at your assignments.
– Do not ask to look at others’ assignments.
– We use automated tools to screen for cheating.
Assignment Submission Policy
Assignments are required to be submitted on
paper and/or electronically
– Code – electronic
– Assignment Submission form in the locker
Assignments due
– 9:00pm on the due date
Late assignments
– Accepted for up to two days after the deadlines
– Late penalty of 10% of the available marks per day
Ethical Conduct
You should read the definition and penalties of
scholastic offences at:
http://www.csd.uwo.ca/UnderGrad/scholastic_off
ences.shtml
Students are expected to adhere to the Rules of
Ethical Conduct to use the computing facilities
of the Department:
http://www.csd.uwo.ca/UnderGrad/ethical.shtml