\\ Corning Community College \\ Systems Programming \\ \\ End of Course Experience \\ \\ ~~TOC~~ =====Rules===== Presented within will be various questions evaluating your knowledge and experience gained this semester. In places where you are able, the more you write and explain topics the better the chance you will have of receiving full credit (and alternatively, the more credit you will receive should something be incorrect). Note that I'm not just looking for answers; I'm looking for responses and solutions. Show me that you understand the problem and any particular outcome. The questions on this experience are open resource with the exception of other individuals. In that respect, it is CLOSED PERSON. This means you are not to communicate with other people (either in the class or otherwise), in real life or electronically. Use your own knowledge, use your skills, and use your ability to access the allowed resources to aid you in coming up with your well thought out answers to each question. You are allowed, and expected, to ask me questions, so that a problem can be better clarified. You are to do **all** questions. Submission is to be in an organized and easy to read format in a plain text file, such as in an e-mail with attachments on Lab46, sent to (**wedge@lab46.corning-cc.edu** or **haas@corning-cc.edu**) and yourself. You have until 11:59:59pm (that's 23:59:59 in 24-hour time) Friday, December 17th, 2010 to complete and submit this to me. If desired, our scheduled finals week meeting time is: **Friday, December 17th, 2010** from **11:15am-2:15pm** in **B003** (our regular room). Good luck! =====0x0: Proving Grounds===== Selecting from the following list, demonstrate the chosen concept: * file I/O * function present in an external library (library call) * process forking * network communication * kernel signal handling * peripheral input handling =====0x1: Demonstrating Familiarity===== Selecting from the following list, explain and/or demonstrate the chosen concept: * system call * inter-process communication * process threads * binary vs. text file access * pipes * display manipulation =====0x2: The OS element===== Why is it important for the operating system to provide certain functionality and establish an interface for programs to use? =====0x3: The userspace element===== Why do userspace programs benefit from having a consistent programming interface to access lower level operating system features? =====0x4: Userspace considerations===== What would the benefits be of allowing userspace programs direct access to system functionality (instead of having to go through the Operating System's interfaces)? What would be the disadvantages of this approach? =====0x5: Meaning===== Of all the work you've done this semester in this course, identify something that was meaningful to you. * What is it? * Why does it stick out in your mind? Explain =====0x6: Reflection===== Answer me the following: * How did you feel about the course? * Was it useful/interesting to you? * What was your least favorite aspect, and why? * Any comments, suggestions? =====0x7: Personal Assessment===== After an exciting and intellectually challenging run, we're arriving at the end of this semester's journey. Some will be moving on, others sticking around for more. I make it a practice to listen to your thoughts and suggestions. The course, as we all experienced it, unfolds in a manner pertaining, in part, to how you respond to concepts and topics (do we need more time, can I crank it up a couple notches, etc.) so each semester and each class is entirely different from any other- because of each of you, and all of us, working together and learning together. So, searching deep down within your soul- balancing reason with emotion, and considering attendance and timeliness; what grade do you feel you deserve for this course, and why? Justify your answer based on your own perceived performance to course ideals and content, not on need or desire.