|
|
|
Modern Operating Systems by Herbert Bos and Andrew S. Tanenb...
Modern_Operating_Systems_by_Herbert_Bos_and_Andrew_S._Tanenbaum_4th_Ed.pdf
Showing 931 out of 1137
Modern Operating Systems by Herbert Bos and Andrew...
Modern_Operating_Systems_by_Herbert_Bos_and_Andrew_S._Tanenbaum_4th_Ed.pdf-M ODERN O PERATING S YSTEMS
Modern Operating Systems by Herbert...
Modern_Operating_Systems_by_Herbert_Bos_and_Andrew_S._Tanenbaum_4th_Ed.pdf-M ODERN O PERATING S YSTEMS
Page 931
900
CASE STUDY 2: WINDOWS 8
CHAP. 11
Apart from the object-type callbacks, the object manager also provides a set of
generic object routines for operations like creating objects and object types, dupli-
cating handles, getting a referenced pointer from a handle or name, adding and
subtracting reference counts to the object header, and
NtClose
(the generic function
that closes all types of handles).
Although the object namespace is crucial to the entire operation of the system,
few people know that it even exists because it is not visible to users without special
viewing tools.
One such viewing tool is
winobj
, available for free at the URL
www.microsoft.com/technet/sysinternals
.
When run, this tool depicts an object
namespace that typically contains the object directories listed in Fig. 11-19 as well
as a few others.
Directory
Contents
\??
Starting place for looking up MS-DOS devices like C:
\ DosDevices
Official name of \ ??, but really just a symbolic link to \ ??
\Device
All discovered I/O devices
\Driver
Objects corresponding to each loaded device driver
\ObjectTypes
The type objects such as those listed in Fig. 11-21
\Windows
Objects for sending messages to all the Win32 GUI windows
\BaseNamedObjects
User-created Win32 objects such as semaphores, mutexes, etc.
\Arcname
Partition names discovered by the boot loader
\NLS
National Language Support objects
\FileSystem
File-system driver objects and file system recognizer objects
\Security
Objects belonging to the security system
\KnownDLLs
Key shared libraries that are opened early and held open
Figure 11-19.
Some typical directories in the object namespace.
The strangely named directory
\ ??
contains the names of all the MS-DOS-
style device names, such as
A
: for the floppy disk and
C
: for the first hard disk.
These names are actually symbolic links to the directory
\ Device
where the device
objects live.
The name
\ ??
was chosen to make it alphabetically first so as to
speed up lookup of all path names beginning with a drive letter.
The contents of
the other object directories should be self explanatory.
As described above, the object manager keeps a separate handle count in every
object. This count is never larger than the referenced pointer count because each
valid handle has a referenced pointer to the object in its handle-table entry.
The
reason for the separate handle count is that many types of objects may need to have
their state cleaned up when the last user-mode reference disappears, even though
they are not yet ready to have their memory deleted.
One example is file objects, which represent an instance of an opened file. In
Windows, files can be opened for exclusive access. When the last handle for a file
Ace your assessments! Get Better Grades
Browse thousands of Study Materials & Solutions from your Favorite Schools
Concordia University
Concordia_University
School:
Operating_Systems
Course:
Introducing Study Plan
Using AI Tools to Help you understand and remember your course concepts better and faster than any other resource.
Find the best videos to learn every concept in that course from Youtube and Tiktok without searching.
Save All Relavent Videos & Materials and access anytime and anywhere
Prepare Smart and Guarantee better grades
Students also viewed documents
lab 18.docx
lab_18.docx
Course
Course
3
Module5QuizSTA2023.d...
Module5QuizSTA2023.docx.docx
Course
Course
10
Week 7 Test Math302....
Week_7_Test_Math302.docx.docx
Course
Course
30
Chapter 1 Assigment ...
Chapter_1_Assigment_Questions.docx.docx
Course
Course
5
Week 4 tests.docx.do...
Week_4_tests.docx.docx
Course
Course
23
Week 6 tests.docx.do...
Week_6_tests.docx.docx
Course
Course
106