Windows OS is developed by Microsoft to run on PCs. It provides a GUI, virtual memory management, multitasking and device support. The document outlines the history of Windows versions from MS-DOS in 1981 to Windows 10 in 2015. It describes the key features and changes introduced in each version. It also discusses Windows programming, the object manager, processes, threads, memory management and other technical aspects of the Windows operating system.
Windows OS is developed by Microsoft to run on PCs. It provides a GUI, virtual memory management, multitasking and device support. The document outlines the history of Windows versions from MS-DOS in 1981 to Windows 10 in 2015. It describes the key features and changes introduced in each version. It also discusses Windows programming, the object manager, processes, threads, memory management and other technical aspects of the Windows operating system.
Windows OS is developed by Microsoft to run on PCs. It provides a GUI, virtual memory management, multitasking and device support. The document outlines the history of Windows versions from MS-DOS in 1981 to Windows 10 in 2015. It describes the key features and changes introduced in each version. It also discusses Windows programming, the object manager, processes, threads, memory management and other technical aspects of the Windows operating system.
Windows OS is developed by Microsoft to run on PCs. It provides a GUI, virtual memory management, multitasking and device support. The document outlines the history of Windows versions from MS-DOS in 1981 to Windows 10 in 2015. It describes the key features and changes introduced in each version. It also discusses Windows programming, the object manager, processes, threads, memory management and other technical aspects of the Windows operating system.
Download as PPTX, PDF, TXT or read online from Scribd
Download as pptx, pdf, or txt
You are on page 1of 29
Introduction
Windows OS is computer OS developed by
Microsoft Corporation to run PCs. Microsoft is an American Company which was founded by Bill Gates and Paul Allen in 1975. Windows provides GUI, virtual memory management , multitasking and support for many devices. History of Windows • MS-DOS (1981) • Windows 1.0 – 2.0 (1985-1992) • Windows 3.0 – 3.1 (1990-1994) • Windows 95 (June 1998) • Windows 98 (June 1998) • Windows NT 3.1 – 4.0 (1993 – 1996) • Windows 2000 (February 2000) • Windows ME – Millennium Edition (Sep 2000) • Windows XP (Oct 2001) • Windows Vista (Nov 2006) • Windows 7 (Oct 2009) • Windows 8 (Aug 2012) • Windows 10 (July 2015) MS-DOS (1981) • Developed by Microsoft for IBM. • A user can interact with this OS only through command prompt. • There are several commands with options are provided for furnishing the computer related tasks. Windows 1.0-2.0 (1985-1992) • Instead of typing MS-DOS commands, Windows 1.0 allowed user to point and click to access the windows. • You can display the contents of electronic folders and files with the click of a mouse button, rather than typing commands and directory paths at a text prompt. Windows 2.0 was designed for the Intel 286 processor (16 – bit microprocessor). This version added desktop icons , keyboard shortcuts and improved graphics support. Windows 3.0 – 3.1 (1990 – 1994) • It allowed better icons , performance and advanced graphics with 16 colors designed for Intel 386 processors. • It supports standard “look and feel” of Microsoft Windows for many years to come. • This included Program Manager , File Manager and Print Manager and games. • Microsoft released Windows 3.1 in 1992 with few changes. Windows 95 (1995) • As the name implies, Windows 95 was arrived in August 1995. • It bought the first ever start button and start menu. • It supported 32 – bit applications. Windows 98 ( June 1998) • Windows 98 bought with it IE 4 (Internet Explorer 4). • It supported a number of new technologies. Windows NT 3.1 – 4.0 (1993-1996) • Windows NT – 32 bit OS that supports multitasking. • It is processor independent , multiprocessing and multi – user OS. • There are two versions of Windows NT : Windows NT Server and Windows NT Workstation. Windows 2000 (February 2000) • It is abbreviated as “W2K”. • Windows 2000 is an operating system for business desktop and laptop systems to run software applications , connect to internet and intranet sites, and access files, printers, and network resources. • There are 4 versions of Windows 2000 : Professional ( for business desktop and laptop systems), Server(both Web Server and an office server), Advanced Server (for line of business applications) and Datacenter Server (for high traffic computer networks). Windows ME – Millennium Edition (Sep 2000) • Windows ME was an update to the Windows 98 core and included some features of the windows 2000 OS . • It also removed the “boot in DOS” option. • This was the last windows to be based on MS- DOS. Windows XP (Oct 2001) • Windows XP is based on Windows 2000 kernel ; giving user a more stable and reliable environment than previous versions of windows. • There are two versions of Windows : Home and Professional. Windows Vista (November 2006) • Windows vista offered an advancement in security , performance , ease of deployment and manageability over Windows XP. • It has capabilities to detect hardware problems before they occur. • Faster start-up time. • Low power consumption. • New sleep state. Windows 7 (October 2009) • Improved performance and start-up time. • It bought with it IE 8 (Internet Explorer 8) and multi-touch support. • Improved security. • It was intended to fix all the problems faced by Vista. Windows 8 (August 2012) • Windows 8 is a completely redesigned OS. • It was designed with touch screen use in mind. • Start up in a matter of seconds rather than in minutes. • Windows 8 replaced traditional “MS-DOS look and feel” with a new “Metro” design system interface. • The Metro user interface consists of “Start screen” and “Live Tiles”. • Windows 8 supports both x86 PCs and ARM processors. Windows 10 ( July 2015) • Fast start up and resume, built in security. • Return of the Start Menu , New task menu , central notification screen, Anti key logging support, advanced search facility and many more features. Programming Windows • Win32 programming subsystem introduced as a part of NTbased system and the modern WinRT that was introduced in Windows 8. • Main feature is NTOS kernel mode program which uses the same system call interface upon which the OS was built on. • It’s not open source. • It has Modern Software Development Kit which includes WinRT API. • The libraries implement high level OS functions that uses inter-process communication using the subsystem. • Calls of subsystem takes place in kernel mode. The Native NT Application Programming Interface • In this API, calls are available to create new kernel mode objects or to access existing ones. • Every call creating or opening an object returns a result called handle to the caller. • Handles are specific to the process that created them. • Following table provides a list of some of the common categories of kernel-mode objects supported by the kernel in Windows: The Win32 Application Programming Interface • The function calls are called as Win32 API. • Most of the functionality of NT APIs is available through the Win32 API. • Some Win32 calls take path names and NT calls use handles. • The table below shows the Win32 API calls and corresponding native NT API calls: The Windows Registry • Windows Registry is used to store information that is necessary to configure the system for one or more users, application, hardware etc. • This includes information such as profiles of each users, apps installed on PC, what type of documents that can be created and so on. • A registry stores a group of keys, subkeys and values in the registry that has a set of supporting files that contains backups of its data. • The supporting files for all except HKEY_CURRENT_USER are in the %SystemRoot%\System32\Config folder on Windows. Operating System Structure • Windows OS is divided into user mode and kernel mode. • The Virtual Memory, also known as virtual RAM, allows hard disk space to be used as if it were additional memory. • The kernel mode in Windows is comprised of the Windows Executive, which includes the Executive Services, the kernel, and the hardware abstraction layer(HAL). Booting Windows • Booting is the process of starting fresh(Cold Booting) or resetting (Warm Booting) the computer. • When you start your PC, BIOS Initialization starts. • Then runs a Power On Self Test (POST) which ends when BIOS detects a valid system disk. • Then reads the Master Boot Record from it and then opens Booting.exe. • This finds and starts Winload.exe which begins the OSloader phase. • It is necessary to update BIOS version and hardware components to keep computer optimized. • OSloader then loads the system registry hive and additional drvies that are marked as BOOT_START into memory. Implementation of the object Manager • The Object Manager is the Executive subsystem,which provides a resource management support infrastructure tht all other NT Executive subsystem is dependent on. • Handles:The handle is an abstraction which hides a real memory address from the API user,allowing the system to reorganize physical memory transparently to the program. • The Object Namespace:To protect named object from unauthorized access,an object namespace is used. Subsystems,DLLs,and User-Mode Services • The subsystems are the way of supporting multiple operating system with the same underlying software in kernal mode. • A second key aspect of the user-mode design of windows is Dynamic link library(DLLs),which is a library that contain code and data that can be used by more than one program at the same time. • The user mode services are not having ability to directly access hardware or reference memory. PROCESSES AND THREADS IN WINDOWS • A process is nothing but an executing program which contains its own independent virtual address sopace with both code and data,protected from other process. • The windows thread is the basic executable unit.Threads are scheduled on the basis of the usual factors such as availability of resource(CPUs and physical memory).
• Jobs and fibres
The jobs are used for resource management as once a process is in a job,all processes threads in those process create will also be in the job. The fibers are created by allocating a stack and a user mode fiber data structure for storing registers and data associated with the fiber.
• Thread pools and user-mode scheduling
The thread pool is a facility that provide a better abstraction for certain types of programs. The implementation of UMS(User-Mode scheduling) has three key elements. 1.User-mode switching 2.Re-entering the user-mode scheduler 3.System-call completion Job,Process,Thread,and fiber Management API Calls • Interprocess Communication(IPC) It allows the exchange of data between processes. • Synchronization Windows provides synchronization mechanisms such as semaphores,mutexes,critical regions ,and events. Implementation of Process aand Threads • MEMORY Virtual Address Allocation MANAGEMENT • Each page of virtual address can be in on of the three states: 1.Invalid 2.Reserved 3.Committed • Pagefiles The backing store to committed pages which are not being mapped to specific files uses the pagefiles. Memory-Management system calls Implementation of Memory Management • Page Fault Handling A page fault is a type of interrupt called trap,raised by computer hardware when a running program accesses a memory page that is mapped into the virtual address space but not actually loaded into main memory. • The Page Replacement Algorithm 1.Lots of memory available 2.Memory Getting Tight 3.Memory is tight • Physical Memory Management When a physical is no longer mapped by the page table in any process it goes onto one of three list: 1.Free 2.Modified 3.Standby