<< Chapter < Page
  Operating systems     Page 3 / 3
Chapter >> Page >

T = 10*(Ts + 1/(2r) + 1/(rN))

T = 10(.008 s + .003125 s + (100 KB)(60 s/m)/(9600 rpm)(300 KB/r)

T = 10(.008 s + .003125 s + .002083 s)

T = 132.083 ms

What file organization would you choose to maximize efficiency in terms of speed of access, use of storage space, and ease of updating(adding/deleting/modifying) when the data are:

  • updated infrequently and accessed frequently in random order?

Both the indexed file organization and the hashed file are efficient for frequent access to random parts of a file. Since the fileis updated infrequently, the overhead of keeping indexes is reduced.

  • updated frequently and accessed in its entirety relatively frequently?

The indexed sequential file is efficient when access is usually to the entire file in sequential order. Keeping multiple indexes addsunnecessary overhead and the hash structure is not as useful for sequential access.

  • updated frequently and accessed frequently in random order?

The hashed file is efficient for frequent updates, and also is efficient for random access.

Consider a hierarchical file system in which free disk space is kept in a free space list.

  • Suppose the pointer to free space is lost. Can the system reconstruct the free space list?

Yes, it is easy to recover the lost space. Keep a bit map for every block on the disk, initially set to zero. Then traverse the filesystem starting at the root, and mark the bit mask with a 1 for every block that is used by every file. In the end, those blocks still marked by a zero arefree.

  • Suggest a scheme to ensure that the pointer is never lost as a result of a single memory failure.

One solution is to keep a copy of the free space pointer in several different places on the disk.

Consider the organization of a unix file as represented by the inode (figure 12.13). assume that there are 12 direct block pointers in a singly,Doubly, and triply indirect pointer in each inode. further, assume that the system block size and the disk sector size are both 8k. if the disk blockPointer is 32 bits, with 8 bits to identify the physical disk and 24 bits to identify the physical block, then

  • What is the maximum file size supported by this system?

The maximum file size can be found by calculating the space all the different types of block pointers can reference. First we need tocalculate the number of pointers an indirect block can hold:

N = 8*1024*8/32 = 2048

Then:

Size = 12*8 + 2048*8 + 2048*2048*8 + 2048*2048*2048*8 KB = 64 TeraBytes

  • What is the maximum file system partition supported by this system?

The maximum file system partition is essentially equal to the size of a disk. Since we use 24 bits to address the blocks on eachdisk, the maximum size of a disk is 128 GB.

  • Assuming no information other than that the file inode is already in main memory, how many disk accesses are required to access the byte inposition 13,423,956?

The address given is in the 13 MB range. The 12 direct pointers cover 96K, so the address is not located there. The singlyindirect pointer covers the next 16 MB of the file, so the address is in a block referenced by the singly indirect pointer. This means we will need two diskaccesses, one for the indirect block and another for the block containing the data.

What services are provided by tcp that are not provided by udp? briefly explain what each of these services does.

  • reliability: TCP ensures that whenever a source host sends a message, it will be received by the destination host in the order it was sent.If the network drops or corrupts the packet, TCP will retransmit it until it is received correctly.
  • flow control: TCP checks how much data the destination host can buffer, then makes sure the source host does not send more than this amount at atime. This keeps the source host from sending data faster than the destination host can receive it.
  • congestion control: TCP continually adapts to current network conditions, and slows down the source host if the network becomes congested.This keeps the source from sending data faster than the network can deliver it.

Explain how udp traffic can "take over" the network when competing with tcp traffic.

UDP does not use congestion control, so all it has to do is send at whatever rate it desires. If this causes packet loss due tocongestion in a router (a FIFO queue overflowing), then the TCP flows will slow down. If UDP sends at a high enough rate, it can force the TCP flows to slowdown enough that they get nothing.

Why does a udp server need only one socket but a tcp server needs one socket for each client?

A UDP server needs only one socket because anyone can send to it on that socket. It does not establish connections to each client. ATCP server, on the other hand, needs a socket for each client because it establishes a separate connection for each one.

Get Jobilize Job Search Mobile App in your pocket Now!

Get it on Google Play Download on the App Store Now




Source:  OpenStax, Operating systems. OpenStax CNX. Aug 13, 2009 Download for free at http://cnx.org/content/col10785/1.2
Google Play and the Google Play logo are trademarks of Google Inc.

Notification Switch

Would you like to follow the 'Operating systems' conversation and receive update notifications?

Ask