Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Case Study

Download as pdf or txt
Download as pdf or txt
You are on page 1of 6

CASE STUDY – WINDOWS NT

ABSTRACT

This case study examines a fictional company's migration from a legacy operating system to Windows NT. It
explores the challenges faced by the organization, the decision-making process, and the implementation strategies
employed during the migration. The study highlights the benefits achieved by the company following the successful
transition and offers insights for similar IT initiatives. Windows NT (New Technology) is a family of operating systems
developed by Microsoft Corporation. It was first released in 1993 and marked a significant departure from Microsoft's
previous operating systems, such as MS-DOS and Windows 3.1. Windows NT was designed to be a powerful, scalable,
and secure operating system primarily targeting business and enterprise users. This case study provides an overview
of the key features, impact, and evolution of Windows NT.

NEW TECHNOLOGY (NT)

❖ After OS/2, MS decide they need "New Technology":


❖ 1988: Dave Cutler recruited from DEC
❖ 1989: team (~10 people) starts work on a new OS with a micro-kernel architecture
❖ Team grew to about 40 by the end, with overall effort of 100 person-years
❖ July 1993: first version (3.1) introduced. Sucked
❖ September 1994: NT 3.5 released, providing mainly size and performance optimisations
❖ May 1995: NT 3.51 with support for the Power PC, and more performance tweaks
❖ July 1996: NT 4.0 with "new" (Windows 95) look 'n' feel. Saw some desktop use but mostly limited to servers.
Various functions pushed back into the kernel, notably graphics rendering

CONTINUED EVOLUTION

❖ Feb 2000: NT 5.0 aka Windows 2000. Borrows from windows 98 look 'n' feel. Provides server and workstation
versions, latter of which starts to get wider use. Big push to finally kill DOS/Win9x family that fails due to
internal politicking
❖ Oct 2001: Windows XP (NT 5.1) launched with home and professional editions. Finally kills Win9x. Several
"editions" including Media Center [2003], 64-bit [2005]) and Service Packs (SP1, SP2). 45 million lines of code
❖ 2003: Server product 2K3 (NT 5.2), basically the same modulo registry tweaks, support contract and of course
cost. Comes in many editions
❖ 2006: Windows Vista (NT 6.0). More security, more design, new APIs
❖ 2009: Windows 7 (NT 7.0). Focused more on laptops and touch devices
❖ 2012: Windows 8 (NT 8.0). Radical new UI with tiles, focused on touch at least as much as supporting
mouse/keyboard
❖ 2013: Windows 8.1 (NT 8.1). Back off the UI a bit, more customisation
❖ 2015: Windows 10 (NT 10.0). More connectivity, for and between devices

Challenges and Motivation:

The challenges associated with the legacy operating system are discussed, along with the business drivers that
prompted the migration decision. The risks and constraints associated with the migration are also assessed.
Planning and Decision-making:

This section explains the formation of the migration team and the evaluation of alternative options. It
highlights the reasons behind choosing Windows NT as the target operating system.

Migration Strategy:

The strategy for the migration project is detailed, including the assessment of infrastructure readiness,
application compatibility analysis, data migration planning, and the training and communication strategy.

Implementation:

The phased approach to implementation is explained, along with the execution of a pilot project. It covers the
testing and quality assurance processes, as well as the rollout and user support.

Benefits and Results:

The positive outcomes resulting from the migration to Windows NT are discussed, including improved system
performance, enhanced security and stability, simplified system administration, and increased user productivity.

Key Features and Architecture:

1. Robustness and Reliability: Windows NT introduced a preemptive multitasking system, providing stability and
reliability by isolating processes and preventing one program from crashing the entire system.
2. Security: It incorporated advanced security features, including user-based access control, file-level encryption,
and auditing capabilities. These features made Windows NT suitable for environments with stringent security
requirements.
3. Scalability: Windows NT supported multiple processor architectures and scalable multiprocessing, allowing it
to handle large workloads and enterprise-level applications.
4. Networking Capabilities: Windows NT offered built-in networking features, such as TCP/IP support, domain-
based networking, and integration with Microsoft's Active Directory, making it a suitable choice for networked
environments.
5. Compatibility: Windows NT provided a Win32 application programming interface (API) that allowed developers
to create applications compatible with both Windows NT and the consumer-oriented Windows operating
systems.

Impact and Evolution:

1. Enterprise Adoption: Windows NT gained significant popularity in enterprise environments due to its advanced
features, reliability, and security. It became the foundation for subsequent versions, including Windows 2000,
Windows XP, Windows Server, and the modern Windows operating systems.
2. Business Applications: Windows NT's robust architecture and scalability made it suitable for running critical
business applications, such as databases, web servers, and enterprise resource planning (ERP) systems.
3. Server Domination: Windows NT Server became one of the leading server operating systems, challenging
competitors like Novell NetWare and UNIX. It provided a user-friendly interface, extensive network
management tools, and compatibility with Microsoft's server applications.
4. Consumer Version: To cater to home users, Microsoft released Windows NT Workstation, which combined the
power and security of Windows NT with the user-friendly interface of the consumer-oriented Windows
operating systems.
5. Legacy and Successors: While the Windows NT architecture and branding eventually evolved into the Windows
family of operating systems, the core principles of reliability, security, and scalability continue to be influential
in Microsoft's current offerings.
Lessons Learned:

This section shares best practices, recommendations, and key lessons learned from the migration project. It
highlights challenges faced and mitigation strategies employed, as well as the importance of post-migration evaluation.

OBJECTS AND MANAGERS:

In Unix, everything is a file — in NT, everything is an object

Every resource in NT is represented by an (executive) object Kernel objects are re-exported at executive level by
encapsulation Objects comprise a header and a body, and have a type (approximately 15 types in total).

VIRTUAL MEMORY MANAGER:

Assumes that the underlying hardware supports virtual to physical mapping, a paging mechanism, transparent
cache coherence on multiprocessor systems, and virtual address aliasing. NT employs paged virtual memory
management, The VMM provides processes with services to:

❖ Allocate and free virtual memory via two step process: reserve a portion of the process's address space, then
commit the allocation by assigning space in the NT paging file
❖ Modify per-page protections, in one of six states: valid, zeroed, free, standby, modified and bad
❖ Share portions of memory using section objects ( software segments), based verus non-based, as well as
memory-mapped files
❖ A section object is a region of [virtual] memory which can be shared, containing: max size, page protection,
paging file (or mapped file if mmap) and based vs non based

SECURITY REFERENCE MANAGER:

NT's object-oriented nature enables a uniform mechanism for runtime access and audit checks

❖ Every time a process opens handle to an object, check that process's security token and object's ACL
❖ Compare with Unix (filesystem, networking, window system, shared memory, ...)
STRUCTURAL OVERVIEW:

Both layered and modular ("layered system of modules") Interactions at top are message passing (IPC/LPC);
next down is system calls (traps); below is direct invocation Note that this is a static representation; in practice
subsystems are DLLs (plus a few services); also have various threads running below Kernel Mode: HAL, Kernel, &
Executive User Mode: environmental subsystems, protection subsystem.

IO MANAGER:

The IO Manager is responsible for file systems, cache management, device drivers Keeps track of which
installable file systems are loaded, manages buffers for IO requests, and works with VMM to provide memory-mapped
files Controls the NT cache manager, which handles caching for the entire IO system (ignore network drivers for now).

IO OPERATIONS:

Basic model is asynchronous:

❖ Each IO operation explicitly split into a request and a response


❖ IO Request Packet (IRP) used to hold parameters, results, etc.

This allows high levels of flexibility in implementing IO type (can implement synchronous blocking on top of
asynchronous, other way round is not so easy)
FILE SYSTEMS:

❖ File Systems-FAT16
❖ File Systems-FAT32
❖ File Systems-NFTS

File Systems-FAT16:

FAT16 (originally just "FAT") is a floppy disk format from Microsoft (1977) but was used for hard-disks up to
about 1996. It's quite a simple file system which basically uses the "chaining in a map" technique described in lectures
to manage files

File System-FAT32:

❖ Obvious extension:
• instead of using 2 bytes per entry, FAT32 uses 4 bytes per entry, so can support e.g. 8Gb partition with
4kB clusters
❖ Further enhancements with FAT32 include:
• Can locate the root directory anywhere on the partition (in FAT16, the root directory had to
immediately follow the FAT(s))
• Can use the backup copy of the FAT instead of the default (more fault tolerant)
• Improved support for demand paged executables (consider the 4kB default cluster size)
• VFAT on top of FAT32 does long name support: unicode strings of up to 256 characters
• Want to keep same directory entry structure for compatibility with, e.g., DOS so use multiple directory
entries to contain successive parts of name
• Abuse V attribute to avoid listing these

Still pretty primitive...

File System-NFTS:

Fundamental structure of NTFS is a volume:

❖ Based on a logical disk partition


❖ May occupy a portion of a disk, and entire disk, or span across several disks
Main Windows NT features are:

❖ Layered/modular architecture
❖ Generic use of objects throughout
❖ Multi-threaded processes & multiprocessor support
❖ Asynchronous IO subsystem
❖ NTFS filing system (vastly superior to FAT32)
❖ Preemptive priority-based scheduling

Design essentially more advanced than Unix.

❖ Implementation of lower levels (HAL, kernel & executive) actually rather decent
❖ But: has historically been crippled by
• Almost exclusive use of Win32 API
• Legacy device drivers (e.g. VXDs)
• Lack of demand for "advanced" features
❖ Continues to evolve: Singularity, Drawbridge, Windows 10, ...

CONCLUTION:

Windows NT revolutionized the operating system landscape by introducing a robust, scalable, and secure
platform for businesses and enterprises. Its impact can be seen in the widespread adoption of subsequent versions
and its dominance in server environments. Windows NT's legacy lives on in the modern Windows operating systems,
which continue to build upon its foundations while adapting to evolving technologies and user needs.

You might also like