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