19/05/2005. You might like to try compiling and running the program add-result.c that appends a new line to a file results within your UNIX account. Also, try running it after you have removed write permission to results. Now change to the directory /tmp and try to run the executable there that I have set up. You will find that you don't have permission to append to results. Now try executing add-result-modified which is the same program, but with the set-UID bit on. Take a look at the permission string for the two executables and the data file.
12/05/2005. Your marked submissions for assignment 1 will be returned in today's tutorial. In the revision lecture next Wednesday, I shall go through last year's exam paper.
03/05/2005. Please print out the slides for Lecture 9 and bring them with you. I will first finish off Lecture 8 (access matrix).
28/04/2005. Please start to work on the second (and final) coursework assignment. Also, if you printed the slides for Lecture 8 yesterday, please check that the fifth slide includes a bullet point concerning execution flags. (This important information was missing in the version of the slides that I originally posted on the Web.)
26/04/2005. Please print out the slides for Lecture 8 and bring them with you. I will first finish off Lecture 7 (network file systems in UNIX and Java RMI and IDL).
21/04/2005. Here are the Java programs, EchoClient.java and EchoClient.java, that I explained in the lecture for you to try out. You can compile and run the server and one or more instances of the client from the same machine. If you want to run the server on a different machine from the client, which is normally the case, you should replace "localhost" in the client with the name of the host on which the server is running. Note that a client on one machine may be unable to connect to a server on another machine because of a firewall.
20/04/2005. Please print out the slides for Lecture 7 and bring them with you.
13/04/2005. Welcome back! Please print out the slides for Lecture 6 and bring them with you.
12/03/2005. Please start to work on the first coursework assignment. Have fun!
10/03/2005. Here are the C and Java versions of the Ping Pong program given in the lecture in case you want to try them out yourself: pingpong.c, PingPong.java, Ping.java, Pong.java. Here is a Java program that starts printing out Hamming numbers, but subseuently goes wrong and eventually deadlocks: Hamming.java, Fork.java, Merge.java and Times.java.
09/03/2005. Today I will finish Lecture 5, the last this term. I will include a demonstration of the C and Java pingpong programs. There will be tutorials this week and next, as usual. Please re-check this page for the first coursework assignment.
29/02/2005. Please print out the slides for Lecture 5 and bring them with you. I will first finish off Lecture 4 (files in Java and file-system implementation).
22/02/2005. Please print out the slides for Lecture 4 and bring them with you on Thursday (24 February). The lecture will take place in N206 and will start promptly at 2pm. All students should attend.
15/02/2005. Please print out the slides for Lecture 3 and bring them with you. I will first finish off Lecture 2 (RAID and disk cache). Note that my lecture is cancelled both in Week 4 (23 February) and in Week 7 (16 March).
07/02/2005. Lectures will now take place in K504. Please print out the slides for Lecture 2 and bring them with you. If you missed the first lecture and tutorial, I still have copies of the Unit Guide available for collection, or you can print it out yourself from here.
01/02/2005. The CCA-2-OSN Unit Guide will be handed out at the lecture tomorrow, but please print out the slides for Lecture 1 and bring them with you.
07/12/2004. Slides for the lecture "Virtual Memory" can now be viewed. Tomorrow I will go through them after finishing the lecture "Memory Management". You will also be given the opportunity to complete a Unit Evaluation Questionnaire during the lecture.
30/11/2004. Here is last year's exam paper for revision practice. I shall go through the model answers in week 13. Although I have set new questions this year, your exam paper will be similar in style. You will have two hours to answer three out of four questions, covering processes, threads, memory management and virtual memory, and processor scheduling.
28/11/2004. Slides for the lecture "Memory Management" can now be viewed.
17/11/2004. There will be no lecture next week (Week 9), but there will be a tutorial as usual. Lectures continue in Weeks 10, 11 and 12: you are advised to attend because they cover material examined in two out of the four exam questions! The second coursework assignment is now available.
10/11/2004. The multiple-choice test will take place at the start of next week's lecture (Wednesday 17/11/2004). Please turn up promptly at 11:00! You will have the chance to practice on last year's test in your tutorial this week. (There is no need to print it out.) You might also like to compile and run the Java program TestBuffer.java that uses BoundedBuffer.java, as defined in the lecture (with a couple of print statements added).
06/11/2004. Slides for the lecture "Synchronization and Deadlock" can now be viewed. On Wednesday I will make a start on them after finishing the lecture "Mutual Exclusion".
02/11/2004. interference.c and cooperation.c are two more examples of C programs that use the pthreads library. After compiling the former on the University's Unix system using the Gnu C compiler (gcc -pthread), I found that a different number is printed out each time it is run! (The latter doesn't terminate and you will have to type CTRL-C to kill it.)
01/11/2004. Slides for the lecture "Mutual Exclusion" can now be viewed. On Wednesday I will make a start on them after finishing the lecture "Threads". Remember to revise all the lectures as you will soon be given a multiple-choice test!
28/10/2004. In Part A.2. of the first coursework assignment, the hint suggests you look up the trap built-in command in the man page for the appropriate shell. Since the description on that man page may be confusing, you might also want read about the command here and here.
27/10/2004. ptest.c is an example of a C program that uses the pthreads library; this can be compiled on the University's Unix system using cc -pthread. jtest.java is a similar program written in Java.
21/10/2004. Slides for the lecture "Threads" can now be viewed.
15/10/2004. Slides for the lecture "Process Description and Control" can now be viewed.
13/10/2004. Today I will finish the lecture "Operating System Overview". The first coursework assignment is now available.
05/10/2004. Slides for the lecture "Operating System Overview" can now be viewed. I don't expect to get through all this tomorrow, especially as I first have to finish off the last two slides from the lecture "Computer System Overview". Make sure you know your username and password so that you can access your account on unix.lsbu.ac.uk in tutorials!
29/09/2004. The unit guide for CCA-2-OSS "Operating Systems: Scheduling & Storage" (semester 1, 2004-05) and slides from week 1's lecture can be viewed by clicking on the links. (They were also handed out in my first lecture.) UNIXhelp for Users is recommended reading. LSBU's Computer Services Department also produces a document "Getting Started with UNIX" (that it is being handed out in tutorials this week) and maintains its own Help for UNIX users Web page.