Discuss each of the tasks of encapsulation, concurrent processing, protection, name resolution,
communication of parameters and results, and scheduling in the case of the UNIX file service (or
that of another kernel that is familiar to you).

What will be an ideal response?


We discuss the case of a single computer running Unix.
Encapsulation: a process may only access file data and attributes through the system call interface.
Concurrent processing: several processes may access the same or different files concurrently; a process that
has made a system call executes in supervisor mode in the kernel; processes share all file-system-related data,
including the block cache.
Protection: users set access permissions using the familiar user/group/other, rwx format. Address space
protection and processor privilege settings are used to restrict access to file data and file system data in memory
and prevent direct access to storage devices. Processes bear user and group identifiers in protected kernel
tables, so the problem of authentication does not arise.
Name resolution: pathnames (for example, /usr/fred) are resolved by looking up each component in turn. Each
component is looked up in a directory, which is a table containing path name components and the
corresponding inodes. If the inode is that of a directory then this is retrieved; and the process continues until
the final component has been resolved or an error has occurred. Special cases occur when a symbolic link or
mount point is encountered.
Parameter and result communication: parameters and results can be communicated by a) passing them in
machine registers, b) copying them between the user and kernel address spaces, or c) by mapping data blocks
simultaneously in the two address spaces.
Scheduling: there are no separate file system threads; when a user process makes a file system call, it continues
execution in the kernel.
NFS is discussed in Section 8.2.

Computer Science & Information Technology

You might also like to view...

What does this function accomplish?

``` 1 float p( float x, int n ) 2 { 3 if ( n == 0 ) 4 return 1; 5 else 6 return x p( x, n – 1 ); 7 } ``` A. it computes the factorial of x B. it computes xn C. it multiples all integers in the range from x to n D. it adds the sum of x n for n times

Computer Science & Information Technology

What is the function of the syntax tree component in a language processing system?

What will be an ideal response?

Computer Science & Information Technology

What command will allow a CentOS 7 user the ability to copy files or directories in the directory tree?

A. cp B. COPY C. XCOPY D. cd

Computer Science & Information Technology

You can apply conditional formatting to table cells in the same way that you can format a range of worksheet data.

Answer the following statement true (T) or false (F)

Computer Science & Information Technology