Operating Systems, Final Review

¡Supera tus tareas y exámenes ahora con Quizwiz!

Discuss ways by which managers of systems connected to the Internet could have limited or eliminated the damage done by the worm. What are the drawbacks of making such changes to the way in which the system operates?

"Firewalls" can be erected between systems and the Internet. These systems filter the packets moving from one side of them to the other, assuring that only valid packets owned by authorized users are allowed to access the protect systems. Such firewalls usually make use of the systems less convenient (and network connections less efficient).

Consider a system that supports 5000 users. Suppose that you want to allow 4990 of these users to be able to access one file. How would you specify this protection scheme in UNIX?

- Create an access control list with the names of all 4990 users. - Put these 4990 users in one group and set the group access accordingly. This scheme cannot always be implemented since user groups are restricted by the system.

How do you find a physical address given a logical address with segmentation?

1) Get the base address 2) Check that the offset is less than the length 3) Add the the offset to the base address

Could you simulate a multi level directory structure with a single-level directory structure in which arbitrarily long names could be used? If your answer is yes, explain how you can do so, and contrast this scheme with the multilevel directory scheme. If your answer is no, explain what prevents your simulation's success. How would your answer change if file names were limited to seven characters?

1. If arbitrarily long names can be used then it is possible to simulate a multilevel directory structure. This can be done, for example, by using the character "." to indicate the end of a subdirectory. Thus, for example, the name jim.java.F1 specifies that F1 is a file in subdirectory java which in turn is in the root directory jim. 2. If file names were limited to seven characters, then the above scheme could not be utilized and thus, in general, the answer is no. The next best approach in this situation would be to use a specific file as a symbol table (directory) to map arbitrarily long names (such as jim.java.F1) into shorter arbitrary names (such as XX00743), which are then used for actual file access.

Rank the following page-replacement algorithms: LRU, FIFO, Optimal, and Second-chance.

1. Optimal 2. LRU 3. Second-chance 4. FIFO

How do caches help improve performance? Why do systems not use more or larger caches if they are so useful?

Caches allow components of differing speeds to communicate more efficiently by storing data from the slower device, temporarily, in a faster device (the cache). Caches are, almost by definition, more expensive than the device they are caching for, so increasing the number or size of caches would increase system cost.

Why is it important to scale up system bus and device speeds as the CPU speed increases?

Consider a system which performs 50% I/O and 50% computes. Doubling the CPU performance on this system would increase total system performance by only 50%. Doubling both system aspects would increase performance by 100%. Generally, it is important to remove the current system bottleneck, and to increase overall system performance, rather than blindly increasing the performance of individual system components.

How does DMA increase system concurrency? How does it complicate hardware design?

DMA increase system concurrency by allowing the CPU to perform tasks while the DMA system transfers data via the system and memory buses. Hardware design is complicated because the DMA controller must be integrated into the system and the system must allow the DMA controller to be a bus master. Cycle stealing may also be necessary to allow the CPU and DMA controller to share use of the memory bus.

Some systems automatically delete all user files when a user logs off or a job terminates, unless the user explicitly requests that they be kept; other systems keep all files unless the user explicitly deletes them. Discuss the relative merits of each approach.

Deleting all files not specifically saved by the user has the advantage of minimizing the file space needed for each user by not saving unwanted or unnecessary files. Saving all files unless specifically deleted is more secure for the user in that it is not possible to lose files inadvertently by forgetting to save them.

In a ring-protection system, level 0 has the greatest access to objects, and level n (greater than 0) has fewer access rights. The access rights of a program at a particular level in the ring structure are considered as a set of capabilities. What is the relationship between the capabilities of a domain at level j and a domain at level i to an object (for j>i)?

Dj is a sub set of Di.

The list of all passwords is kept within the operating system. Thus, if a user manages to read this list, password protection is no longer provided. Suggest a scheme that will avoid this problem. (Hint: use different internal and external representations.

Encrypt the passwords internally so that they can only be accessed in coded form. The only person with access or knowledge of decoding should be the system operator

What are the advantages of encrypting data stored in the computer system?

Encrypted data are guarded by the operating system's protection facilities, as well as a password that is needed to decrypt them. Two keys are better than one when it comes to security

External Fragmentation

Exists when total free memory is enough for the new process but it's not contiguous and can't satisfy the request. Storage is fragmented into small holes.

Segmentation is similar to paging, but uses variable-sized "pages." Define two segment-replacement algorithm based on FIFO and LRU page-replacement schemes. Remember that, since segments are not the same size, the segment that is chosen to be replaced may not be big enough to leave enough consecutive locations for the needed segment. Consider strategies for systems where segments cannot be relocated, and those for systems where they can.

FIFO: Find the first segment large enough to accommodate the incoming segment. If relocation is not possible and no one segment is large enough, select a combination of segments whose memories are contiguous, which are closest to the first of the list and which can accommodate the new segment. If relocation is possible, rearrange the memory so that the first N segments large enough for the incoming segments are contiguous in memory. Add any leftover space to the free-space list in both cases. LRU: Select the segment that has not been used for the longest period of time and that is large enough, adding any leftover space to the free-space list. If no one segment is large enough, select a combination of the "oldest" segments that are contiguous in memory (if relocation is not available) and that are large enough. If relocation is available, rearrange the oldest N segments to be contiguous in memory and replace those with the newst segment.

Researchers have suggested that, instead of having an access list associated with each file (specifying which users can access the file, and how), we should have a user control list associated with each user (specifying which files a user can access, and how). Discuss the relative merits of these two schemes.

File Control List - Since the access control information is concentrated in one single place, it is easier to change access control information and this requires less space. User Control List - this requires less overhead when opening a file.

Requests are not usually uniformly distributed. For example, a cylinder containing the file system FAT or inodes can be expected to be accessed more frequently than a cylinder that only contains files. Suppose you know that 50 percent of the requests are for a small, fixed number of cylinders Propose a disk-scheduling algorithm that gives an even better performance by taking advantage of this "hot spot" on the disk.

Here are some ideas. Place the hot data near the middle of the disk. Modify SSF to prevent starvation. Add the policy that if the disk becomes idle for more than 50ms, the operating system generates an anticipatory seek to the hot region, since the next request is more likely to be there.

Consider a computing environment where a unique number is associated with each process and each object in the system. Suppose that we allow a process with number n to access an object with number m only if n>m. What type of protection structure do we have?

Hierarchical structure

Consider a system that supports the strategies of contiguous, linked, and indexed allocation. What criteria should be used in deciding which strategy is best utilized for a particular file? What about contiguous?

If a file is usually accessed sequentially, if the file is relatively small.

Consider a paging system with the page table stored in memory. If we add associative registers, and 75 percent of all page-table references are found in the associative registers, what is the effective memory reference time? (Assume that finding a page-table entry in the associative registers takes zero time, if the entry is there.)

If associated registers are added and the hit ratio is 75% then effective memory access time is given as EMAT = 0.75 x 200ns + 0.25 x 400ns = 250ns

Consider a system that supports the strategies of contiguous, linked, and indexed allocation. What criteria should be used in deciding which strategy is best utilized for a particular file? What about indexed?

If the file is large and usually accessed randomly.

Consider a system that supports the strategies of contiguous, linked, and indexed allocation. What criteria should be used in deciding which strategy is best utilized for a particular file? What about linked?

If the file is large and usually accessed sequentially.

Is disk scheduling, other than FCFS scheduling, useful in a single-user environment? Explain your answer.

In a single-user environment, the I/O queue usually is empty. Requests generally arrive from a single process for one block or for a sequence of consecutive blocks. In these cases, FCFS is an economical method of disk scheduling. But LOOK is nearly as easy to program and will give much better performance when multiple processes are performing concurrent I/O, such as when w Web browser retrieves data in the background while the operating system is paging and another application is active in the foreground.

Why must the bitmap for file allocation be kept on mass storage rather than in main memory?

In case of system crash (memory failure) the free-space list would not be lost as it would be if the bit map had been stored in main memory.

Consider a system where free space is kept in a free-space list. Suppose that the pointer to the free-space list is lost. Can the system reconstruct the free-space list? Explain your answer.

It is necessary to have a garbage collection . this would entail searching the entire directory structure to determine which pages are already allocated to jobs. Those remaining unallocated pages could be relinked as the free-space list

Consider a file system where a file can be deleted and its disk space reclaimed while links to that file still exist. What problems may occur if a new file is created in the same storage area or with the same absolute path name?

Let F1 be the old file and F2 be the new file. A user wishing to access F1 through an existing link will actually access F2. Note that the access protection for file F1 is used rather than the one associated with F2.

Assume that you have a page-reference string for a process with m frames (initially all empty). The page-reference string has length p; n distinct page numbers occur in it. What is a lower bound on the number of page faults? What is an upper bound?

Lower bound is n. Upper bound is p.

What is Belady's Anomaly?

More frames = more page faults (applies only to FIFO and second-chance)

None of the disk-scheduling disciplines, except FCFS, is truly fair (starvation may occur). Explain why this assertion is true.

New requests for the track over which the head currently resides can theoretically arrive as quickly as these requests are being serviced.

Given memory partitions of 100k, 500k, 200k, 300k, and 600k (in order), how would each of the First-fit, Best-fit, and Worst-fit algorithms place processes of 212k, 417k, 112k, and 426k (in order)? Which algorithm makes the most efficient use of memory?

Obvious, and best-fit is the only scheme that can store all the processes (without relocation)

None of the disk-scheduling disciplines, except FCFS, is truly fair (starvation may occur). Give three or more examples of circumstances in which it is important that the operating system be unfair in serving I/O requests.

Paging and swapping should take priority over user requests. It may be desirable for other kernel-initiated I/O, such as the writing of file system metadata, to take precedence over user I/O. if the kernel supports real-time process priorities, the I/O requests of those processes should be favored.

Give an example of an application in which data in a file should be accessed in the following order: Randomly

Print the contents of record 'I'. This record can be found using hashing or index techniques.

Give an example of an application in which data in a file should be accessed in the following order: Sequentially

Printing the contents of a file

Why are page sizes always powers of 2?

Recall that paging is implemented by breaking up an address into a page and offset number. It is most efficient to break the address into X page bits and Y offset bits, rather than perform arithmetic on the address to calculate the page number and offset. Because each bit position represents a power of 2, splitting an address between bits results in a page size that is a power of 2.

If all the access rights to an object are deleted, the object can no longer be accessed. At this point, the object should also be deleted, and the space it occupies should be returned to the system. Suggest an efficient implementation of this scheme.

Reference counts.

Requests are not usually uniformly distributed. For example, a cylinder containing the file system FAT or inodes can be expected to be accessed more frequently than a cylinder that only contains files. Suppose you know that 50 percent of the requests are for a small, fixed number of cylinders Would any of the scheduling algorithms discussed in this chapter be particularly good for this case? Explain your answer.

SSTF would take greatest advantage of the situation. FCFS could cause unnecessary head movement if references to the "high-demand" cylinders were interspeed with references to cylinders far away.

Which page-replacement algorithms suffer from Belady's anomaly?

Second-chance and FIFO

Describe a mechanism by which one segment could belong to the address space of two different processes.

Since segment tables are a collection of base-limit registers, segments can be shared when entries in the segment table of two different jobs point to the same physical location. The two segment tables must have identical base pointers, and shared segment number must be the same two processes.

Explain why it is easier to share a reentrant module using segmentation than it is to do so when pure paging is used.

Since segmentation is based on a logical division of memory than a physical one, segments of any size can be shared with only one entry in the segment tables of each user. With paging there must be a common entry in the page tables for each page that is shared. Also, the addresses within the code are relative to the segment, so it can be relocated more easily.

Consider a logical address space of eight pages of 1024 words each, mapped onto a physical memory of 32 frames B. How many bits are there in the physical address?

Since there are 32 = 2^5 physical pages, physical addresses are 5 + 10 bits long

Why is it that, on a system with paging, a process cannot access memory that it does not own? How could the operating system allow access to other memory? What is the use of doing that?

Sn address on a paging system is a logical page number and an offset. The physical page is found by searching a table based on the logical page number to produce a physical page number. Because the operating system controls the contents of this table, it can limit a process to accessing only those physical pages allocated to the process. There is no way for a process to refer to a page it does not own because the page will not be in the page table. To allow such access an operating system simply needs to allow entries for non-process memory to be added to the process page table. This is useful for when two or more processes need to exchange data - they just read and write to the same physical addresses (which may be varying logical addresses). This makes for very efficient interprocess communication.

Why do some systems keep track of the type of a file, while others leave it to the user or simply do not implement multiple file types? Which system is "better?"

Some systems allow different file operations based on the type of the file. Other systems leave such interpretation of a files data to the process and provide no help in accessing the data. The method that is "better" depends on the needs of the processes on the system, and the demands the users place on the operating system. If a system runs mostly database applications, it may be more efficient for the operating system to implement a database- type file and provide operations, rather than making each program implement the same thing (possibly in different ways). For general- purpose systems it may be better to only implement basic file types to keep the operating system size smaller and allow maximum freedom to the processes on the system.

How could the operating system allow access to other memory? What is the use of doing that?

Swap out a page from PT and load into the frame you want to access. This is useful for when two or more processes need to exchange data - they just read and write to the same physical addresses (which may be varying logical addresses). This makes for very efficient interprocess communication.

The UNIX program, COPS, scans a given system for possible security holes and alerts the user to possible problems. What are the potential hazards of using such a system for security? How can these problems be limited or eliminated?

The COPS program itself could be modified by an intruder to disable some of its features or even to take advantage of its features to create new security flaws. Even if COPS is not cracked, it is possible for an intruder to gain a copy of COPS, study it, and locate security breaches which COPS does not detect. Then that intruder could prey on systems in which the management depends on COPS for security (thinking it is providing security), when all COPS is providing is management complacency. COPS could be stored on a read-only medium or file system to avoid its modification. It could be provided only to bona fide systems managers to prevent it from falling into the wrong hands. Neither of these is a foolproof solution, however

Explain why SSTF scheduling tends to favor middle cylinders over the innermost and outermost cylinders

The center of the disk is the location having the smallest average distance to all other tracks. Thus the disk head tends to move away from the edges from the disk. Here is another way to think of it. The current location of the head divides the cylinders into two groups. If the head is not the center of the disk and a new request arrives, the new request is more likely to be in the group that includes the center of the disk; thus, the head is more likely to move in that direction.

When virtual memory is implemented in a computing system, there are certain costs associated with the technique and certain benefits. List the costs and the benefits. Is it possible for the costs to exceed the benefits? If it is, what measures can be taken to ensure that this does not happen?

The costs are additional hardware and slower access time. The benefits are good utilization of memory and larger logical address space than physical address space.

What is the effect of allowing two entries in a page table to point to the same page frame in memory? Explain how you could use this effect to decrease the amount of time needed to copy a large amount of memory from one place to another. What would the effect of updating some byte in the one page be on the other page?

The effect is that two pages in a single process refer to the same physical page. Hence, if you change a byte at one address, a byte at the same offset in the other page will change. This can be used to perform copies quickly by mapping a page read-only at two addresses. If it is modified, then the copy can be done later(if at all)

Consider a system where free space is kept in a free-space list. Suggest a scheme to ensure that the pointer is never lost as a result of memory failure.

The free-space list pointer could be stored on the disk, perhaps in several places.

What is the need-to-know principle? Why is it important for a protection system to adhere to this principle?

The need-to-know principle states that a process should only be allowed access to resources for which it has authorization and that it currently needs to complete its task. By adhering to the need-to-know principle, the damage created by a faulty process (via a bug or malicious code) is limited to its "need-to-know" resources, not some larger set.

We have an operating system for a machine that uses based and limit registers, but we have modified the machine to provide a page table. Can we set up the page tables to simulate based and limit registers?

The page table can be set up to simulate base and limit registers provided that the memory is allocated in fix-sized segments. In this way, the base of a segment can be entered into the page table and the valid/invalid bit used to indicate that portion of the segment as resident in the memory. There will be some problem with internal fragmentation however

Consider a system that supports 5000 users. Suppose that you want to allow 4990 of these users to be able to access one file. Could you suggest another protection scheme that could be used more effectively for this purpose than the scheme provided by UNIX?

The universal access to files applies to all users unless their name appears in the access-control list with different access permissions. With this scheme you simply put the names of the remaining ten users in the access control list but with no access privileges allowed.

A certain computer provides its users with a virtual-memory space of 2^32 bytes. The computer has 2^18 bytes of physical memory. The virtual memory is implemented by paging, and the page size is 4096 bytes. A user process generates the virtual address 11123456. Explain how the system establishes the corresponding physical location.

The virtual address in binary form is 0001 0001 0001 0010 0011 0100 0101 0110. Since the page size is 2^12, the page table size is 2^20. Therefore the low order 12 bits 0100 0101 0110 are used as the displacement into the page, while the remaining 20 bits 0001 0001 0001 0010 0011 are used as the displacement in the page table. The offset bits are then concatenated to the resulting physical page number (from the page table), to form the final address.

Consider a file system where a file can be deleted and its disk space reclaimed while links to that file still exist. How can these problems be avoided?

This problem can be avoided by ensuring that all links to a deleted file are deleted also. This can be accomplished in several ways: - Maintain a list of all links to a file, removing each of them when the file is deleted. - Retain the links, removing them when an attempt is made to access a deleted file. - Maintain a file reference list (or counter), deleting the file only after all links or references to that file have been deleted

What is the cause of thrashing? How does the system detect thrashing? Once it detects thrashing, what can the system do to eliminate this problem?

Thrashing is caused by under-allocation of the minimum number of pages require by a process, forcing it to continuously page fault. The system can detect thrashing by evaluating the level of CPU utilization as compared to the level of multi-programming. It can be eliminated by reducing the level of multi-programming.

None of the disk-scheduling disciplines, except FCFS, is truly fair (starvation may occur). Explain why fairness is an important goal in a time-sharing system.

To prevent unusually long response times.

Is there any way to implement truly stable storage? Explain your answer

Truly stable storage would never lose data. The fundamental technique for stable storage is to maintain multiple copies of the data, so that if one copy is destroyed, some other copy is still alive for use. But for any scheme, we can imagine a large enough disaster that all copies are destroyed.

When a process is rolled out of memory, it loses its ability to use the CPU (at least for a while). Describe another situation where a process loses its ability to use the CPU, but where the process does not get rolled out.

When an interrupt occurs the processes loses the CPU, but regains it as soon as the handler completes. The process never rolls out of memory.

A password may become known to other users in a variety of ways. Is there a simple method for detecting that such an event has occurred? Explain your answer.

Whenever a user logs in, the system prints the last time that user was logged on the system.

Some systems provide file sharing by maintaining a single copy of a file; other systems maintain several copies, one for each of the users sharing the file. Discuss the relative merits of each approach.

With a single copy, several concurrent updates to a file may result in user obtaining incorrect information, and the file being left in an incorrect state. With multiple copies, there is storage waste and the various copies may not be consistent with respect to each other.

Why is it that, on a system with paging, a process cannot access memory that it does not own?

You can only access the pages that are in your page table.

Suppose that you want to use a paging algorithm that requires a reference bit (such as second-chance replacement or working-set model), but the hardware does not provide one. Sketch how you could simulate a reference bit even if one were not provided by the hardware.

You can use the valid/invalid bit supported in hardware to simulate the reference bit. Initially set the bit to invalid. On the first reference, a trap to the operating system is generated. The operating system will set a software bit to 1 and reset the valid/invalid bit to valid.

Requests are not usually uniformly distributed. For example, a cylinder containing the file system FAT or inodes can be expected to be accessed more frequently than a cylinder that only contains files. Suppose you know that 50 percent of the requests are for a small, fixed number of cylinders File systems typically find data blocks via an indirection table, such as a FAT in DOS or inodes in UNIX. Describe one or more ways to take advantage of this indirection to improve the disk performance.

cache the metadata in primary memory, and locate file's data and metadata in close physical proximity on the disk. (UNIX accomplishes the latter goal by allocating data and metadata in regions called cylinder groups).

Consider a demand-paging system with the following time-measured utilizations: CPU utilization 20%, Paging disk 97.7%, Other I/O devices 5%. Which (if any) of the following will (probably) improve CPU utilization?

d. Decrease the degree of multiprogramming e. Install more main memory f. Install a faster hard disk, or multiple controllers with multiple hard disks g. Add prepaging to the page fetch algorithms h. Increase the page size (can decrease as well)

Consider a system where a program can be separated into two parts: code and data. The CPU knows whether it wants an instruction (instruction fetch) or data (data fetch or store). Therefore, two base-limit register pairs are provided: one for instructions and one for data. The instruction base-limit register pair is automatically set to read only, so programs can be shared among different users. Discuss the advantages of this scheme.

it supports the data sharing effectively. As data is in read-only mode, it provides secure data sharing. Illegal access can be avoided. It also has an effective mechanism for code and data sharing. It supports user view of memory as separate read-only segments.

Describe the following allocation algorithm: First fit

stop at first space large enough

Describe the following allocation algorithm: Worst fit

stop at largest space available

Describe the following allocation algorithm: Best fit

stop at smallest space to fit

CPU utilization, 87 percent; disk utilization, 3 percent

system is well utilized, CPU is being kept busy most of the time. Multiprogramming should stay

Consider a system where a program can be separated into two parts: code and data. The CPU knows whether it wants an instruction (instruction fetch) or data (data fetch or store). Therefore, two base-limit register pairs are provided: one for instructions and one for data. The instruction base-limit register pair is automatically set to read only, so programs can be shared among different users. Discuss the disadvantages of this scheme.

the disadvantage with this scheme is the code and data must be separated. Usually they will be combined.

CPU utilization, 13 percent; disk utilization, 3 percent

the system is underutilized, increase the level of multiprogramming

CPU utilization, 13 percent; disk utilization, 97 percent

thrashing is occurring, decrease multi-programming

Assume we have a demand-paged memory. The page table is held in registers. It takes 8 milliseconds to service a page fault if an empty page is available or the replaced page is not modified, and 20 milliseconds if the replaced page is modified. Memory access time is 100 nanoseconds. Assume that the page to be replaced is modified 70 percent of the time. What is the maximum acceptable page-fault rate for an effective access time of no more than 200 nanoseconds?

time of no more than 200 nanoseconds? Let p be the page fault rate (the probability that a memory access results in a page fault). Then (1 − p) is the probability that a memory access costs 100 nsec. The probability that a page fault costs 20 msec is 0.7 ∗ p and the probability that a page fault costs 8 msec is 0.3 ∗ p. Since 1 nsec = 1000000 msec, (1 − p)100 + 0.7(p)(20000000) + 0.3(p)(8000000) = 200 (14000000 + 2400000 − 100)p = 100 p = 100/(16400100) = 6.1 ∗ 10−6 = .0000061 = .00061%

Thrashing

A condition of excessive paging in which the operating system becomes sluggish. Occurs with the size of locality is greater than the total memory size.

Under what circumstances do page faults occur? Describe the actions taken by the operating system when a page fault occurs.

A page fault occurs when an access to a page that has not been brought into main memory takes place. The operating system verifies the memory access, aborting the program if it is invalid. If it is valid, a free frame is located and I/O is requested to read the needed page into the free frame. Upon completion of I/O, the process table and page table are updated and the instruction is restarted.

Consider a paging system with the page table stored in memory. If a memory reference takes 200 nanoseconds, how long does a paged memory reference take?

A paged memory reference requires 2 memory accesses: one to get the frame number for the page number from memory and actually accessing the data. So if a memory reference takes 200 nanoseconds then a paged memory reference will take 400 nanoseconds.

The RC 4000 system (and other systems) have defined a tree of processes (called a process tree) such that all the descendants of a process are given resources (objects) and access rights by their ancestors only. Thus, a descendant can never have the ability to do anything that its ancestors cannot do. The root of the tree is the operating system, which has the ability to do anything. Assume the set of access rights was represented by an access matrix, A. A(x,y) defines the access rights of process x to object y. If x is a descendant of z, what is the relationship between A(x,y) and A(z,y) for an arbitrary object y?

A(x,y) is a subset of A(z,y).

None of the disk-scheduling disciplines, except FCFS, is truly fair (starvation may occur). Describe a way to modify algorithms such as SCAN to ensure fairness.

ALL REQUESTS OLDER THAN SOME PREDETERMINED AGE COULD BE "FORCED" TO THE TOP OF THE QUEUE, AND AN ASSOCIATED BIT FOR EACH COULD BE MOVED AHEAD OF THESE REQUESTS. FOR SSTF, THE REST OF THE QUEUE WOULD HAVE TO BE REORGANIZED WITH RESPECT TO THE LAST OF THESE "OLD" REQUESTS.

Consider a computing environment where a process is given the privilege of accessing an object only n times. Suggest a scheme for implementing this policy.

Add an integer counter with the capability

Consider a logical address space of eight pages of 1024 words each, mapped onto a physical memory of 32 frames A. How many bits are there in the logical address?

Addressing within a 1024-word page requires 10 bits because 1024 = 2^10. since the logical address space contains 8 =2^3 pages, the logical address must be 10 + 3 bits.

What are the main differences between capability lists and access lists?

An access list is a list for each object consisting of the domains with a nonempty set of access rights for that objet. A capability list is a list of objects and the operations allowed on those objects for each domain.

Internal fragmentation

Area occupied by a process but cannot be used by the process. This space is unusable by the system until the process releases the space.

Some systems automatically open a file when it is referenced for the first time, and close the file when the job terminates. Discuss the advantages and disadvantages of this scheme as compared to the more traditional one, where the user has to open and close the file explicitly.

Automatic opening and closing of files relieves the user from the invocation of these functions, and thus makes it more convenient to the user; however, it requires more overhead than the case where explicit opening and closing is required.


Conjuntos de estudio relacionados

NSG 304 Psych Module 5 Test Schizophrenia and Other Psychiatric Disorders

View Set

Chap 1 - Short Answer, Chap 1 - Multiple Choice, Chap 2- Multiple Choice, Chap 2 - Short Answers, Chap 3 - Multiple Choice, Chap 3 - Short Answers, Chap 4 - Multiple Choice, Chap 4 - Short Anser, Chap 5 - Multiple Choice, Chap 5 - Short Answers, Chap...

View Set

Estar with conditions and emotions

View Set