Hardware Reference
In-Depth Information
6.3.3 Directory Management Instructions
In the early days of computing, people kept their programs and data on
punched cards in file cabinets in their offices. As the programs and data grew in
size and number, this situation became less and less desirable. It eventually led to
the idea of using the computer's secondary memory (e.g., disk) as a storage place
for programs and data as an alternative to file cabinets. Information that is directly
accessible to the computer without the need for human intervention is said to be
online , as contrasted with offline information, which requires human intervention
(e.g., inserting a tape, CD-ROM, USB stick, or SD card) before the computer can
access it.
Online information is stored in files, making it accessible to programs via the
file I/O instructions discussed above. However, additional instructions are needed
to keep track of the information stored online, collect it into convenient units, and
protect it from unauthorized use.
The usual way for an operating system to organize online files is to group them
into directories . Figure 6-23 shows an example directory organization. System
calls are provided for at least the following functions:
1. Create a file and enter it in a directory.
2. Delete a file from a directory.
3. Rename a file.
4. Change the protection status of a file.
All modern operating systems allow users to maintain more than one file direc-
tory. Each directory is typically itself a file and, as such, may be listed in another
directory, thus giving rise to a tree of directories. Multiple directories are particu-
larly useful for programmers working on several projects. They can then group all
the files related to one project together in one directory. While working on that
project, they will not be distracted by unrelated files. Directories are also a con-
venient way for people to share files with members of their group.
6.4 OSM-LEVEL INSTRUCTIONS FOR PARALLEL PROCESSING
Some computations can be most conveniently programmed for two or more co-
operating processes running in parallel (i.e., simultaneously, on different proc-
essors) rather than for a single process. Other computations can be divided into
pieces, which can then be carried out in parallel to decrease the elapsed time re-
quired for the total computation. In order for several processes to work together in
 
 
 
Search WWH ::




Custom Search