Beruflich Dokumente
Kultur Dokumente
On
Windows Operating System
Submitted to:
Submitted by:
Rico D. Rillera
Melkert Semilla
Cleo Franchette Gutib
Emile Christian T. Cuevas
BSIT 2-1B
August 2019
INTRODUCTION
Windows is one of the best operating systems that people use. Like most
traditional operating systems, Windows offers a general-purpose time-sharing
multiprocessing and multiprogramming environment. However, windows being said had
lack of tools for efficient implementation of parallel applications.
In this study we will how the key goals in making the windows OS, its responsibility
for users capabilities and satisfactory. And further explain how information/data rums from
user to kernel by defining its tools..
BACKGROUND
PRE-HISTORY
Microsoft and IBM co-developed OS/2 — in hand-written 80286 assembly! As a result,
portability and maintainability weren't really strong features so in 1988 Microsoft decided
to develop a "new technology" portable OS supporting both OS/2 and POSIX APIs Goal:
A 32-bit preemptive multitasking operating system for modern microprocessors Originally,
NT was supposed to use the OS/2 API as its native environment, but during development
NT was changed to use the Win32 API, reflecting the popularity of Windows 3.0
HISTORY
1988: gates approaches David Cutler(DEC)
1993: WinNT Launched
2000: Windows 2000(previously “NT5.0”)
2001 Windows XP (build 2600)
2003 Windows Server 2003
Key Goals
Portability: hence written in C/C++ with the HAL to hide low-level details.
Security: new uniform access model implemented via object manager, and
certified to US DOD level C2.
Multiprocessor support: most small OS didn’t have this, and traditional kernel
schemes are less well suited.
Extensibility: because, sometimes, we get this wrong; coupled with the above
point, most directly led to the use of micro-kernel design.
International support: sell to a bigger market, meant adopting UNICODE as
fundamental internal naming scheme.
Compatibility with MS-DOS/Windows: don’t want to lose customers, but
achieved partial compatibility only.
Performance: within the constraints of the other design goals, the system should
be as fast and responsive as possible on each hardware platform.
KERNEL MODE
NTDLL.DLL
Support library for use of subsystem DLLs:
• System service dispatch stubs to NT executive system services
– NtCreateFile, NtSetEvent
– Most of them are accessible through Win32 Stubs call
servicedispatcher/kernel-mode service in NTOSKRNL.EXE
• Support functions used by subsystems
– Image loader (Ldr...)
– Heap manager
– Win32 subsyst. Comm. func. (Csr...)
– Runtime library func. (Rtl...)
– User-mode asynch. procedure call (APC) dispatcher, exception disp.
Win32 Subsystem
• Environment subsystem process (CSRSS.EXE):
– Console (text) windows
– Creating and deleting processes and threads
– Portions of the support for 16-bit virtual DOS machine (VDM)
– Other func: GetTempFile, DefineDosDevice, ExitWindowsEx
• kernel-mode device driver (WIN32K.SYS):
– Window manager: manages screen output;
– input from keyboard, mouse, and other devices
– user messages to applications
. – Graphical Device Interface (GDI)
• Subsystem DLLs (such as USER32.DLL, ADVAPI32.DLL, GDI32.DLL, and
KERNEL32.DLL)
– Translate Win32 API functions into calls to NTOSKRNL.EXE and WIN32K.SYS.
• Graphics device drivers
– graphics display drivers, printer drivers, video miniport drivers.
Reference:
https://sritsense.weebly.com/uploads/5/7/2/7/57272303/windows_os.pdf
https://www.cl.cam.ac.uk/teaching/1516/OpSystems/pdf/12-Case-Study-WindowsNT.pdf
https://www.academia.edu/17392324/A_Portable_Kernel-Mode_Resource_Manager_on_Windows_2000_Platforms
http://www.dps.uibk.ac.at/~tf/lehre/ss04old/bs/vorlesungen/WindowsInternals1page.pdf