Unix system calls and library functionsthe goal of this

Assignment Help Operating System
Reference no: EM13371199

Unix System Calls and Library Functions

The goal of this homework is to become familiar with the environment in hoare while practising system calls. 

Do Exercise 5.8:Traversing Directories (p. 179) in your text by Robbins/Robbins. You only need to do the Example 5.38, or

breadth-first traversal.

The programming task requires you to create a utility to traverse a specified directory in breadth-first order. Breadth-first search

explores all the nodes at a given level before descending lower in the tree. Breadth-first search is implemented with a queue.

As the program encounters each directory node at a particular level, it enqueues the pathname for later examination. You can

use the following pseudocode which makes use of queue ADT. You will have to provide the code for queue ADT operations

yourself.

breadthfirst ( root )

{

enqueue ( root );

while ( ! empty ( queue ) )

{

next = dequeue ( queue );

for each node directly below next

{

visit ( node );

if ( isa_directory ( node ) )

enqueue ( node );

}

}

}

The indentation of the filenames shows the level in the file system tree. Use the output format specified in Example 5.37, with

a default indentation of 4 spaces for each level in the directory. You should be able to change the indentation spaces by using

an option on command line followed by a number. The executable should be called bt. The program will be invoked by:

bt [-h] [-L -d -g -i -p -s -t -u -In | -l] [dirname]

The options are to be interpreted as follows:

h Print a help message and exit.

L Follow symbolic links, if any. Default will be to not follow symbolic links.

t Print information on file type.

p Print permission bits as rwxrwxrwx.

i Print the number of links to file in inode table.

I n Indent by n spaces.

Unix System Calls 2

u Print the UID associated with the file.

g Print the GID associated with the file.

s Print the size of file in bytes. If the size is larger than 1K, indicate the size in KB with a suffix K; if the size is larger than

1M, indicate the size in MB with a suffix M; if the size is larger than 1G, indicate the size in GB with a suffix G.

d Show the time of last modification.

l This option will be used to print information on the file as if the options tpiugs are all specified.

If the user does not specify dirname, run the command using current directory and print the tree accordingly. The output will

appear as follows:

$ ls -I 4 -l proj

proj drwx------ 10 sanjiv faculty 4K Nov 25, 2003

bi_scan drwx------ 3 sanjiv faculty 4K Jul 06, 2004

include drwx------ 3 sanjiv faculty 4K Nov 25, 2003

CVS drwx------ 2 sanjiv faculty 4K Nov 25, 2003

Makefile -rw------- 1 sanjiv faculty 712 Nov 25, 2003

Makefile.Linux -rw------- 1 sanjiv faculty 1K Nov 25, 2003

CVS drwx------ 2 sanjiv faculty 4K Nov 25, 2003

cluster.h -rw------- 1 sanjiv faculty 5K Nov 25, 2003

config.h -rw-r--r-- 1 sanjiv faculty 5K Jan 22, 2004

Entries -rw------- 1 sanjiv faculty 336 Nov 25, 2003

Repository -rw------- 1 sanjiv faculty 24 Nov 25, 2003

Root -rw------- 1 sanjiv faculty 15 Nov 25, 2003

Entries -rw------- 1 sanjiv faculty 650 Nov 25, 2003

Repository -rw------- 1 sanjiv faculty 24 Nov 25, 2003

Root -rw------- 1 sanjiv faculty 15 Nov 25, 2003

With the use of perror, I’ll like some meaningful error messages. The format for error messages should be:

bt: Error: Detailed error message

where bt is actually the name of the executable (argv[0]) and should be appropriately modified if the name of executable is

changed without recompilation.

What to handin

Create your programs in a directory called username.1 where username is your user name on hoare. Once you are done with

everything, remove the executables and object files, and issue the following commands:

% cd

% ˜sanjiv/bin/handin cs4760 1

Do not forget Makefile (with suffix or pattern rules), RCS and README for the assignment. If you do not use RCS, you will

lose 10 points. I want to see the log of how the program files are modified. Therefore, you should use keyword substitution

within RCS inside your source files. 

Reference no: EM13371199

Questions Cloud

Answer the following questions using apa format answer the : answer the following questions using apa format. answer the questions in 750-1200 words and include charts and graphs
Chapter 331 describe why an application developer might : chapter 3.3.1 describe why an application developer might choose to run over tcp rather than udp.3.2 suppose host a is
What issues need to be considered when deciding to change : what issues need to be considered when deciding to change levels of capacity? how is this decision taken in your or
Covers pmbokreg guidenbsp 5th addition chapters 10 and : covers pmbokreg guidenbsp 5th addition chapters 10 and 11pmbok download link
Unix system calls and library functionsthe goal of this : unix system calls and library functionsthe goal of this homework is to become familiar with the environment in hoare
Operations and information systems critically analyse the : operations and information systems critically analyse the theory concepts and models of operations andinformation
Question 1the ultimate aim that any virus must develop is : question 1the ultimate aim that any virus must develop is the ability to replicate. although viruses have evolved a
Please prepare a powerpoint and answer the questions been : please prepare a powerpoint and answer the questions been asked about the country nigeria and write a paper summarising
Write a report of about 3000 words on a business prevalent : write a report of about 3000 words on a business prevalent in the digital economy. the business can be australian or

Reviews

Write a Review

Operating System Questions & Answers

  Explain how a race condition is possible

the wife calls deposit (). Describe how a race condition is possible and what might be done to prevent the race condition from occurring.

  Use of the ipc facilities provided by unix

The purpose of this program is to change such that it makes use of the IPC facilities provided by UNIX.

  Web system deployed on campus has a failure rate

A web system deployed on campus has a failure rate of 10-3 failures per hour. What is the likeihood that the system will continue operating without failure throughout the duration of one week (Monday to Friday)?

  Explain an ip address

Explain an IP address. Explain Class A, B, and C networks. Are a MAC address and an IP address the similar thing?

  Internal application server for application systems

Classic Catalog Corporation runs a small but rapidly increasing catalog sales business. It outsourced its Web operations to a local ISP for many years but as Web have become a larger portion of its business,

  Point to point and end to end security models

Argue differences in point to point and end to end security models and security problems they address. Are they redundant?

  Explain the function of input controls

Explain the function of input controls and identify four types of input control and explain the function of each

  Question about deadlock

A system has five active procedures(A-E) and one type of resource, which there are two-hundred total unites available in the system.

  What instructions would you give people in a group session

What instructions would you give people in a group session about how to get their computers to look standardized?2. What policy would you suggest for what to put on the screen so it does not offend anyone?

  You have poisson arrivals into your system

You have Poisson arrivals into your system with ?= 5 packets/second. The slot length is 1 second. Your current estimate for n^ is 20 (for the k-th time slot iteration).

  Discuss bluetooth technology and different applications

Discuss Bluetooth technology and different applications. Give an overview on emerging trends in wearable computing.

  A queue is a first-in, first-out list

A queue is a first-in, first-out list. The queue has two essential operations: enqueue, which appends an entry to the end of the list (called the tail ) and dequeue, which returns and removes the first entry in the list

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd