XML

kent logo

CO527 Anonymous Questions and Answers

This page lists the various questions and answers. To submit a question, use the anonymous questions page. You may find the keyword index and/or top-level index useful for locating past questions and answers.

We have taken the liberty of making some minor typographical corrections to some of the questions as originally put. Although most of the questions here will have been submitted anonymously, this page also serves to answer some questions of general interest to those on the course.


Question 161:

In the lectures by Fred, he refers to the "characteristics" and "features" of an operating system as if they are different things. I have looked up the meaning of both words in a standard dictionary which seems to suggest they have practically the same meaning. Is there a difference in the context of operating systems ? I ask because I saw a past exam question asking "describe desirable features of an OS" and wondered if it would be acceptable to talk about the characteristics?

Answer 161:

As a general rule, a standard dictionary isn't entirely helpful for computer-science. Many English words have been "overridden" with new meanings, e.g. "class", "object", "inheritance", "relation", "proposition", etc. Something like the Oxford dictionary of computing, or the free on-line dictionary of computing (FOLDOC) will give more relevant meanings.

When talking about characteristics and features of operating systems, characteristics generally refer to things that the OS must do or have (e.g. long-term storage); features are generally those things which are nice (e.g. efficiency, reliability), possibly a requirement at some level. Given that these two things are made distinct in the notes, it would not really be acceptable to talk about characteristics when asked about features, or visa-versa; some marks might be awarded, however.

Referrers: Question 198 (2004)


Question 162:

Regarding the VMS filing system, you mention that one of its disadvantages was that is fragments easily. Doesn't this contradict the fact that the VMS filing system is based on index-blocks which states that fragmentation is not a problem in the previous lecture?

Answer 162:

My (Fred's) interpretation of this is as follows, but these were Bob's lectures, so.. Fragmentation isn't a problem technically with index-blocks (i.e. index-block based filing-systems can handle fragmented files), but, the more fragmented a file is the more time it will take to access that blocks within that file, which is clearly a disadvantage.

(Bob's follow-on...).... There are two different types of fragmentation. When I said that index-block style filing systems do not suffer from fragmentation, I meant that fragmentation of the free space (from which blocks are allocated) is not a problem. This means that there is never any unusable free space, unlike (for example) in a contiguous filing system, where it's a show stopper if there isn't a big enough free chunk to take the whole file.

The VMS filing system tends to allocate free space in such a way that files are internally fragmented; that is, they tend to consist of blocks allocated from all over the disk. This works OK, but is obviously slower because of additional seek time, rotational latency, etc.

Keywords: filing-systems


Question 163:

In section A of the notes, aren't the differences between the VMS and RMS: input/output, the same as, control instruction differences ? Just seems these two are basically describing the same thing to me.

Answer 163:

Your question is dangerously misleading. You're talking about the differences between virtual-machines and real-machines here. The interpretation of "VMS" is usually something entirely different (an operating-system for a VAX). And "RMS", of course, is Richard Stallman.. (worse, it also stands for Record Management System, an integral part of the VMS filing system ... Bob).

"input/output" and "control and instruction" are essentially different things, if that's what you were asking. Similarly, the virtual-machine and real-machine handling of these are also differnt. Input/output relates typically to device I/O. On a real-machine, this generally involves dealing with I/O ports, interrupts and DMA channels. On a virtual-machine, I/O is always abstracted somehow (e.g. a "/dev/audio" device for sound output on UNIX systems). Control of a real machine tends to be physical (e.g. pushing the power-button, or typing on the keyboard plugged into it), whereas similar operations for a virtual-machine (terminating it or feeding it keyboard input from a remote terminal) are handled by the OS (similar to the virtual-machine handling of input/output).


Question 164:

Regarding the exam for this module, what areas do you think deserve the most attention; and are there certain areas covered in the lecture notes that we don't need to know for the exam?

Answer 164:

That's kind of a difficult question to answer.. The examinable material is what was presented in the lectures, which isn't necessarily an exact mapping onto the lecture notes. Generally, the more time in lectures spent on something, the more important it is. Past exam papers should give you some insight on what to expect, although the rubric for this years exam is slightly different.


Question 165:

What do you mean by self consistent in Part B silde 4, "information must be self consistent" ?

Answer 165:

That information in the system must be consistent with respect to itself.. E.g., in a banking transaction system, a single transaction may affect more than one piece of information (e.g. user account data, user mortgage data, interest calculation data, bank asset data, etc.). Such information must not become inconsistent during the transaction, or at least must not be seen to be inconsistent.


Question 166:

Do you know if the rubrics for C0501 or any CO module has been published yet ?

Answer 166:

Yes, these are now online. See http://www.cs.kent.ac.uk/teaching/rubrics/stages2-3.html for the CO501 rubric.


Question 167:

When will we get our final assessment back?

Answer 167:

It's due back on Thursday week 23. I hope that I will be able to meet that deadline...


Question 168:

How has the exam rubric changed this year?

Answer 168:

In previous years, there were five questions of equal weight. You had to answer three.

This year, there are four questions of equal weight; you have to answer two. There is also one double-weighted question, which is compulsory; it consists of five small parts, equally weighted. These questions are usually more straightforward than the 'big' questions and represent a base of slightly easier-to-get marks.

Referrers: Question 173 (2004)


Question 169:

I'm stuck on 2004 Q3. Where can I found out the answer to the following as I can't find it in the lecture notes?

Describe the main differences between absolute and relocatable program code. Your answer should include a description of any overheads incurred at compile-time,link-time or run-time.

Where can I find what the following meanings:

  1. performance transparency
  2. failure transparency
  3. migration transparency

Also in 2003 I notice you ask about Sun Network File System which we've not covered. Is it safe for me to assume this was based on a piece of coursework we had to do?

Also if we want to submit our Q for you (Bob and Fred) to mark could you please indicate which topics / Q's to submit to which lecturer i.e. which one of you is willing to mark Q's on which topics?

Are there any bits of the past paper which you would recommend to skip as the rubric has changed?

Answer 169:

Absolute and relocatable program code is covered in Lecture 17 (Part O).

Transparency is covered in slides 15 to 17 (and later) of Part P (Distributed Systems). Sun NFS is also covered in Part P!

Submit them to whoever taught the material. Be warned that we are not going to mark questions exam-style; it would take far too long. Rather, we will offer opinions and guidance.

The rubric has changed but the content hasn't. There is nothing you can ignore!

Referrers: Question 173 (2004)


Question 170:

I'm having trouble with an exam question - Q1/2003. I have no idea where in the lecture slides the answers are contained! Please can you direct me to the correct lecture?

[ This question is on disk performance - Bob]

Answer 170:

How about the topic 'Disk Performance' in Part K....?


Question 171:

When are we going to get our MOSS assessment back?

Answer 171:

I'm marking them at the moment, but time split between marking those and answering anonymous questions.. I plan to have them marked by next week.


Question 172:

Is logical address the same as virtual address ?

Answer 172:

The two terms refer in some sense to "non-real addresses", but are typically found in different contexts. The term "logical address" is normally used when talking about disks, e.g. the "logical block address" as opposed to the real address which is a combination of disk/cylinder/head/sector. "virtual address" refers specifically to virtual memory.


Question 173:

In reference to Question 168 (2004). Could you give any hints (from past papers) which topic is now compulsory to know and therefore definately needs more attention?

Answer 173:

From the answer to Question 169 (2004): The rubric has changed but the content hasn't. There is nothing you can ignore!


Question 174:

I've been trying to get my head around memory management, page files and such. I'm a bit confused by page tables. In lecture 7 slide 7 you say that each VM has one or more page tables and your diagram in slide 17 seems to support this, but in slide 16 you say many "systems" use one or more page tables. Which implies that one page table is used from other systems. Is this meant as: one or more page tables per virtual machine ?

So the way I understand it so far is a virtual machine has a bunch of pages in the page file. Some of these pages may or may not be in physical memory. All of these pages are mapped by one or more page tables, which also (on the VAX, only example you give) keep a bit which tells you whether they're in physical memory or not.

The TLB is a cache of most recently used PTEs, but when a new virtual machine accesses memory the whole TLB is dumped for the new VMs page table. This seems a bit pointless why not make the TLB store entries from multiple VMs. I assume VMs are scheduled on the processor for a small amount of time. So everytime a new VM is scheduled you've got to dump the TLB.

Answer 174:

Your phrase "one page table is used from many systems" doesn't make much sense to me.. "System" here refers to the hardware/OS combination generally. So yes, it means that some systems may use more than one page-table per virtual machine.

Virtual machines have pages. As shown in the lecture slides, pages may be in real memory, in the page file, both, or may not exist at all (invalid/unused pages). Although only the VAX PTE is specifically given, other systems are similar.

For the TLB, you can't share PTEs from different VMs. The reason should be mostly obvious: TLBs work by doing lookups on virtual addresses -- it had no specific knowledge of which VM a TLB entry belongs to. So, you could have 3 virtual machines, all with virtual addresses 0x00001000 to 0x00010000, but mapped to different physical addresses. Thus, a virtual-address mapped TLB won't work -- how does it know which corresponding physical address to return, or if missed, which page table to load from ?. It's worth bearing in mind that the scheduling frequency of the OS (i.e. the frequency at which it has to flush the TLB) is generally low (e.g. at least 10ms, or 100 schedules/second).


Question 175:

I'm a bit confused between directories and folders. It's never said that they aren't the same but in the first two slides of Part J (Mem Management II) it seems as if a directory describes a single file (or possibly more) and NOT a container for files. But in slide 3 it says directories might have the ability to list the files. Does this mean folders or are they both the same thing ? I'm sure this was probably clear in the lecture but unfortunately I missed all of memory management!

Answer 175:

I sense some confusion here.. Directories and folders primarily refer to things on the file-system, e.g. like directories on DOS and UNIX (windows calls them "folders", but they're directories really -- I suppose "folder" is a more intuitive, but less technical, name). As computer scientists, call these things directories..

The only mention of the word "directory" in lecture 7 is right at the end, when talking about the page-directory used by the Pentium family of processors. Nothing in slide 3 suggests anything about directories or files ... I'd suggest you read through the notes more thoroughly, together with the book (Silberschatz). There is no substitute for not attending lectures, however.


Question 176:

read question 175 again! its lecture J not 7 - thats the previous question.

Answer 176:

You said: "Part J (Mem Management II)", so I went and pulled out my slides/handouts on "Memory Management part 2". After having looked at the lecture notes page, I see that part J is "Filing Systems II". Perhaps you could check your questions a bit more carefully before posting in future ?


Question 177:

Ok you promised to mark our work for moss before easter, that deadline passed, and still 2nd week into term you haven't marked our work. We would like our work marked before the exam if possible or at the least some indication of when you will mark it.

Answer 177:

Yes, sorry about the delay.. But please bear in mind that I can mark about 4 of these per hour, and there's around 150 to go through -- that works out at about a week's solid marking. If you just wanted a mark and no feedback, things would be much quicker. But I suspect that people would complain even more then. And, funnily enough, I have lots of other things to do besides. I've got about 35 left to do. Once they're done, I need to do the plagerism checks (some solutions are too similar imo), format the marks into a digestible email for you, double-check that each one has been marked fully, get the marks to CAS, ...


Question 178:

In response to the previous question, with all due respect, funnily enough I had other things to do (such as eat, sleep etc.) when there were about six or seven deadlines in a single week last term but I don't think that would have got me a six week extension... The phrase "double standard" comes immediately to mind.

Answer 178:

I take your point, yes, it's not really ideal that you should get your assessments back so late. It wasn't all that long ago when I was where you are, and thinking along the same lines. Unfortunately, or fortunately, marking deadlines are flexible (to a degree). The other deadlines that I have (e.g. getting research papers into conferences, preparing module specifications, writing lectures, etc.) are substantially less flexible. The world hears enough academics whinging about their workloads, but they're quite correct. Marking deadlines could be met, but other things would suffer, and on my list of priorities I'm afraid marking is not particularly high..


Question 179:

In light of your problems in marking, perhaps you should create a assignment that is streamlined and does not require 1000 lines of code that just creates pure chaos for anyone trying to figure out where the hell to start. Maybe if you created a well written (not missing any bits no bugs) simple problem with a large scope, that could be used with a test rig your marking woes would disappear.

Perhaps you made your own problems by giving us your pet project as an assignment.

Answer 179:

Perhaps, but I'm trying to assess your understanding of operating systems and how programs interact with operating systems. No testrig can tell me that -- I have to read your code. Besides, test-rigs unfairly penalise code that doesn't work but is only slightly broken; and at the other end, are unjustly generous to code that works but is an utter wreck. Also, how would a test-rig give you feedback about coding style, etc. -- ultimately making you a better programmer and computer scientist ?

From a personal point of view, I'm all for 0% coursework (or non-assessed coursework) and 100% exam. At least that removes the problem of plagiarism.. But in practice this isn't such a good idea, since a fair proportion of people don't do so well in exams (nerves, untimely illness, etc.); plus exams cannot assess all types of learning outcome.


Question 180:

I'm really stuck on how to tackle q1 of the CO501-02 past paper, I have been doing other past papers and have had no problems with the rest of the questions on this topic... Could you give me some ideas/tips on how to answer it please.

Answer 180:

This is a fairly open-ended question.. To do it successfully, you need to know how some file-system is laid out on disk (which may be an imaginary file-system, but should still be a usable file-system). Formatting is the process of laying out a fresh file-system on the disk and for part (a) you basically need to describe how this would work. Part (b) [which you would have read before attempting part (a)] hints towards the need for some kind of recovery information, or at least ways of detecting errors. Some other useful information you're told is about the size of the disk and its geometry, which will probably be useful when designing the formatting program (and in some ways, the file-system too).

Keywords: exams

Valid CSS!

Valid XHTML 1.0!

Maintained by Fred Barnes, last modified Thu May 8 12:58:04 2014