Search This Blog

Sunday, November 26, 2023

Windows NT

From Wikipedia, the free encyclopedia
Windows NT
DeveloperMicrosoft
Written inC, Assembly language
(core)
C++, C#
(user mode applications)
(C++ is used in the kernel graphical subsystem)
Working stateCurrent
Source model
Initial releaseJuly 27, 1993; 30 years ago
(as Windows NT 3.1)
Latest release23H2 (10.0.22631.2715) (November 14, 2023; 11 days ago) [±]
Latest preview
Release Preview Channel

23H2 (10.0.22631.2787) (November 16, 2023; 9 days ago) [±]

Beta Channel

23H2 (10.0.22635.2771) (November 16, 2023; 9 days ago) [±]

Dev Channel

10.0.23590.1000 (November 15, 2023; 10 days ago) [±]

Canary Channel
10.0.25997.1010 (November 17, 2023; 8 days ago) [±]
Update methodWindows Update, Windows Server Update Services
PlatformsIA-32, x86-64, ARM and ARM64 (and historically Intel i860, DEC Alpha, Itanium, MIPS, and PowerPC)
Kernel typeHybrid (NT)
Influenced byRSX-11, VAXELN, OpenVMS, MICA, Mach (kernel)
MS-DOS, OS/2, Windows 3.1x (userland)
Default
user interface
Graphical (Windows shell)
LicenseDepending on version, edition or customer choice: Trialware, commercial software, volume licensing, OEM-only, SaaS, S+S
Official websitewww.microsoft.com/windows

Windows NT is a proprietary graphical operating system produced by Microsoft, the first version of which was released on July 27, 1993. It is a processor-independent, multiprocessing and multi-user operating system.

The first version of Windows NT was Windows NT 3.1 and was produced for workstations and server computers. It was a commercially focused operating system intended to complement consumer versions of Windows that were based on MS-DOS (including Windows 1.0 through Windows 3.1x). In 1996, Windows NT 4.0 was released, including the new shell from Windows 95. "NT" was formerly expanded to "New Technology" but no longer carries any specific meaning.

Gradually, the Windows NT family was expanded into Microsoft's general-purpose operating system product line for all personal computers, deprecating the Windows 9x family. Starting with Windows 2000, "NT" was removed from the product name and is only included in the product version string along with several low-level places within the system. In fact, NT was a trademark of Northern Telecom (later Nortel) at the time, which Microsoft was forced to acknowledge on the product packaging.

NT was the first purely 32-bit version of Windows, whereas its consumer-oriented counterparts, Windows 3.1x and Windows 9x, were 16-bit/32-bit hybrids. It is a multi-architecture operating system. Initially, it supported several instruction set architectures, including IA-32, MIPS, and DEC Alpha; support for PowerPC, Itanium, x64, and ARM were added later. The latest versions support x86 (including IA-32 and x64) and ARM. Major features of the Windows NT family include the Windows shell, Windows API, Native API, Active Directory, Group Policy, Hardware Abstraction Layer, NTFS, BitLocker, Windows Store, Windows Update, and Hyper-V.

Versions of Windows NT are installed using Windows Setup, which, starting with Windows Vista, uses the Windows Preinstallation Environment, which is a lightweight version of Windows NT made for deployment of the operating system.

Naming

It has been suggested that Dave Cutler intended the initialism "WNT" as a play on VMS, incrementing each letter by one. However, the project was originally intended as a follow-on to OS/2 and was referred to as "NT OS/2" before receiving the Windows brand. One of the original NT developers, Mark Lucovsky, states that the name was taken from the original target processor—the Intel i860, code-named N10 ("N-Ten"). A 1998 question-and-answer (Q&A) session with Bill Gates revealed that the letters were previously expanded to "New Technology" but no longer carry any specific meaning. The letters were dropped from the names of releases from Windows 2000 and later, though Microsoft described that product as being "Built on NT Technology".

Major features

One of the main purposes of NT is hardware and software portability. Various versions of NT family operating systems have been released for a variety of processor architectures, initially IA-32, MIPS, and DEC Alpha, with PowerPC, Itanium, x86-64 and ARM supported in later releases. An initial idea was to have a common code base with a custom Hardware Abstraction Layer (HAL) for each platform. However, support for MIPS, Alpha, and PowerPC was later dropped in Windows 2000. Broad software compatibility was initially achieved with support for several API "personalities", including Windows API, POSIX, and OS/2 APIs – the latter two were phased out starting with Windows XP. Partial MS-DOS and Windows 16-bit compatibility is achieved on IA-32 via an integrated DOS Virtual Machine – although this feature is not available on other architectures.

NT has supported per-object (file, function, and role) access control lists allowing a rich set of security permissions to be applied to systems and services. NT has also supported Windows network protocols, inheriting the previous OS/2 LAN Manager networking, as well as TCP/IP networking (for which Microsoft used to implement a TCP/IP stack derived at first from a STREAMS-based stack from Spider Systems, then later rewritten in-house).

Windows NT 3.1 was the first version of Windows to use 32-bit flat virtual memory addressing on 32-bit processors. Its companion product, Windows 3.1, used segmented addressing and switches from 16-bit to 32-bit addressing in pages.

Windows NT 3.1 featured a core kernel providing a system API, running in supervisor mode (ring 0 in x86; referred to in Windows NT as "kernel mode" on all platforms), and a set of user-space environments with their own APIs which included the new Win32 environment, an OS/2 1.3 text-mode environment and a POSIX environment. The full preemptive multitasking kernel could interrupt running tasks to schedule other tasks, without relying on user programs to voluntarily give up control of the CPU, as in Windows 3.1 Windows applications (although MS-DOS applications were preemptively multitasked in Windows starting with Windows/386).

Notably, in Windows NT 3.x, several I/O driver subsystems, such as video and printing, were user-mode subsystems. In Windows NT 4, the video, server, and printer spooler subsystems were moved into kernel mode. Windows NT's first GUI was strongly influenced by (and programmatically compatible with) that from Windows 3.1; Windows NT 4's interface was redesigned to match that of the brand new Windows 95, moving from the Program Manager to the Windows shell design.

NTFS, a journaled, secure file system, is a major feature for NT. Windows NT also allows for other installable file systems; since versions 3.1, NT may be installed on FAT or HPFS file systems.

Windows NT introduced its own driver model, the Windows NT driver model, and is incompatible with older driver frameworks. With Windows 2000, the Windows NT driver model was enhanced to become the Windows Driver Model, which was first introduced with Windows 98, but was based on the NT driver model. Windows Vista added native support for the Windows Driver Foundation, which is also available for Windows XP, Windows Server 2003 and to an extent, Windows 2000.

Development

Original Windows NT wordmark

Microsoft decided to create a portable operating system, compatible with OS/2 and POSIX and supporting multiprocessing, in October 1988. When development started in November 1989, Windows NT was to be known as OS/2 3.0, the third version of the operating system developed jointly by Microsoft and IBM. To ensure portability, initial development was targeted at the Intel i860XR RISC processor, switching to the MIPS R3000 in late 1989, and then the Intel i386 in 1990. Microsoft also continued parallel development of the DOS-based and less resource-demanding Windows environment, resulting in the release of Windows 3.0 in May 1990.

Windows 3.0 was eventually so successful that Microsoft decided to change the primary application programming interface for the still unreleased NT OS/2 (as it was then known) from an extended OS/2 API to an extended Windows API. This decision caused tension between Microsoft and IBM and the collaboration ultimately fell apart.

IBM continued OS/2 development alone while Microsoft continued work on the newly renamed Windows NT. Though neither operating system would immediately be as popular as Microsoft's MS-DOS or Windows products, Windows NT would eventually be far more successful than OS/2.

Microsoft hired a group of developers from Digital Equipment Corporation led by Dave Cutler to build Windows NT, and many elements of the design reflect earlier DEC experience with Cutler's VMS, VAXELN and RSX-11, but also an unreleased object-based operating system developed by Cutler at Digital codenamed MICA. The team was joined by selected members of the disbanded OS/2 team, including Moshe Dunie.

Windows 2000 architecture

The VMS kernel was primarily written in VAX MACRO, but Windows NT was designed to run on multiple instruction set architectures and multiple hardware platforms within each architecture. The platform dependencies are hidden from the rest of the system by the HAL (Hardware Abstraction Layer).

Mark Russinovich wrote in 1998 that while creating Windows NT, Microsoft developers rewrote VMS in C. Although they added the Win32 API, NTFS file system, GUI, and backwards compatibility with DOS, OS/2, and Win16, DEC engineers almost immediately noticed the two operating systems' internal similarities; parts of VAX/VMS Internals and Data Structures, published by Digital Press, accurately describe Windows NT internals using VMS terms. Instead of a lawsuit, Microsoft agreed to pay DEC $65–100 million, help market VMS, train Digital personnel on Windows NT, and continue Windows NT support for the DEC Alpha.

Windows NT and VMS memory management, processes, and scheduling are very similar. Windows NT's process management differs by implementing threading, which DEC did not implement until VMS 7.0 in 1995, likely to compete with Microsoft.

Like VMS, Windows NT's kernel mode code distinguishes between the "kernel", whose primary purpose is to implement processor- and architecture-dependent functions, and the "executive". This was designed as a modified microkernel, as the Windows NT kernel was influenced by the Mach microkernel developed by Richard Rashid at Carnegie Mellon University, but does not meet all of the criteria of a pure microkernel. Both the kernel and the executive are linked together into the single loaded module ntoskrnl.exe; from outside this module, there is little distinction between the kernel and the executive. Routines from each are directly accessible, as for example from kernel-mode device drivers.

API sets in the Windows NT family are implemented as subsystems atop the publicly undocumented "native" API; this allowed the late adoption of the Windows API (into the Win32 subsystem). Windows NT was one of the earliest operating systems to use Unicode internally.

Architecture

Windows NT uses a layered design architecture that consists of two main components, user mode and kernel mode. Programs and subsystems in user mode are limited in terms of what system resources they have access to, while the kernel mode has unrestricted access to the system memory and external devices. Kernel mode in Windows NT has full access to the hardware and system resources of the computer. The Windows NT kernel is a hybrid kernel; the architecture comprises a simple kernel, hardware abstraction layer (HAL), drivers, and a range of services (collectively named Executive), which all exist in kernel mode.

The booting process of Windows NT begins with NTLDR in versions before Vista and the Windows Boot Manager in Vista and later. The boot loader is responsible for accessing the file system on the boot drive, starting the kernel, and loading boot-time device drivers into memory. Once all the boot and system drivers have been loaded, the kernel starts the Session Manager Subsystem. This process launches winlogon, which allows the user to login. Once the user is logged in File Explorer is started, loading the graphical user interface of Windows NT.

Programming language

Windows NT is written in C and C++, with a very small amount written in assembly language. C is mostly used for the kernel code while C++ is mostly used for user-mode code. Assembly language is avoided where possible because it would impede portability.

Releases

Windows NT releases
Version Marketing name Editions Release date Build number
3.1 Windows NT 3.1 Workstation (named just Windows NT), Advanced Server July 27, 1993 528
3.5 Windows NT 3.5 Workstation, Server September 21, 1994 807
3.51 Windows NT 3.51 May 30, 1995 1057
4.0 Windows NT 4.0 Workstation, Server, Enterprise Server, Terminal Server, Embedded August 24, 1996 1381
5.0 Windows 2000 Professional, Server, Advanced Server February 17, 2000 2195
Datacenter Server September 26, 2000
5.1 Windows XP Home, Professional, Media Center (original, 2004 & 2005), Tablet PC (original and 2005), Starter, Embedded, Home N, Professional N October 25, 2001 2600
Windows Fundamentals for Legacy PCs July 8, 2006
5.2 Windows XP 64-bit Edition Version 2003 (IA-64) March 28, 2003 3790
Windows Server 2003 Standard, Enterprise, Datacenter, Web, Storage, Small Business Server, Compute Cluster April 24, 2003
Windows XP Professional x64 Edition (x86-64) April 25, 2005
Windows Server 2003 R2 Standard, Enterprise, Datacenter, Web, Storage, Small Business Server, Compute Cluster December 6, 2005
Windows Home Server November 4, 2007
6.0 Windows Vista Starter, Home Basic, Home Premium, Business, Enterprise, Ultimate Business: November 30, 2006
Consumer: January 30, 2007
  • 6000 (RTM)
    6001 (SP1)
    6002 (SP2)
    6003 (SP2 Update)
Windows Server 2008 Foundation, Standard, Enterprise, Datacenter, Web Server, HPC Server, Itanium-Based Systems February 27, 2008 6001 (RTM)
6002 (SP2)
6003 (SP2 Update)
6.1 Windows 7 Starter, Home Basic, Home Premium, Professional, Enterprise, Ultimate October 22, 2009 7600 (RTM)
7601 (SP1)
Windows Server 2008 R2 Foundation, Standard, Enterprise, Datacenter, Web Server, HPC Server, Itanium-Based Systems
Windows Home Server 2011 Home Server Premium April 6, 2011 7601 (SP1)
Windows Thin PC June 6, 2011
6.2 Windows 8 Windows 8, Windows 8 Pro, Windows 8 Enterprise, Windows RT October 26, 2012 9200
Windows Server 2012 Foundation, Essentials, Standard, Datacenter September 4, 2012
6.3 Windows 8.1 Windows 8.1, Windows 8.1 Pro, Windows 8.1 Enterprise, Windows RT 8.1, Windows Embedded 8.1 Industry Pro/Enterprise October 18, 2013 9600
Windows Server 2012 R2 Foundation, Essentials, Standard, Datacenter
10.0 Windows 10 Home Single Language, Home China, Home, Pro, Pro Education, Pro for Workstations, Enterprise, Education, Windows 10 S, IoT Core, Mobile, Mobile Enterprise July 29, 2015 10240 (1507/RTM)
10586 (1511)
14393 (1607)
15063 (1703)
16299 (1709)
17134 (1803)
17763 (1809)
18362 (1903)
18363 (1909)
19041 (2004)
19042 (20H2)
19043 (21H1)
19044 (21H2)
19045 (22H2)
Windows Server 2016 Essentials, Standard, Datacenter, Multipoint Premium Server, Storage Server, Hyper-V Server September 26, 2016 14393
Windows Server 2019 Essentials, Standard, Datacenter, Multipoint Premium Server, Hyper-V Server October 2, 2018 17763
Windows Server 2022 August 18, 2021 20348
Windows 11 Home Single Language, Home China, Home, Pro, Education, Pro Education, Pro for Workstations, Enterprise, IoT Enterprise, Windows 11 SE October 5, 2021 22000 (21H2/RTM)
22621 (22H2)
22631 (23H2)

Windows NT 3.1 to 3.51 incorporated the Program Manager and File Manager from the Windows 3.1x series. Windows NT 4.0 onwards replaced those programs with Windows Explorer (including a taskbar and Start menu), which originally appeared in Windows 95.

The first release was given version number 3.1 to match the contemporary 16-bit Windows; magazines of that era claimed the number was also used to make that version seem more reliable than a ".0" release. Also the Novell IPX protocol was apparently licensed only to 3.1 versions of Windows software.

The NT version number is not now generally used for marketing purposes, but is still used internally, and said to reflect the degree of changes to the core of the operating system. However, for application compatibility reasons, Microsoft kept the major version number as 6 in releases following Vista, but changed it later to 10 in Windows 10. The build number is an internal identifier used by Microsoft's developers and beta testers.

Starting with Windows 8.1, Microsoft changed the Version API Helper functions' behavior. If an application is not manifested for Windows 8.1 or later, the API will always return version 6.2, which is the version number of Windows 8. This is because the manifest feature was introduced with Windows 8.1, to replace GetVersion and related functions.

Supported platforms

32-bit platforms

In order to prevent Intel x86-specific code from slipping into the operating system, due to developers being used to developing on x86 chips, Windows NT 3.1 was initially developed using non-x86 development systems and then ported to the x86 architecture. This work was initially based on the Intel i860-based Dazzle system and, later, the MIPS R4000-based Jazz platform. Both systems were designed internally at Microsoft.

Windows NT 3.1 was released for Intel x86 PC compatible, PC-98, DEC Alpha, and ARC-compliant MIPS platforms. Windows NT 3.51 added support for the PowerPC processor in 1995, specifically PReP-compliant systems such as the IBM ThinkPad Power Series laptops and Motorola PowerStack series; but despite meetings between Michael Spindler and Bill Gates, not on the Power Macintosh as the PReP compliant Power Macintosh project failed to ship.

Intergraph Corporation ported Windows NT to its Clipper architecture and later announced an intention to port Windows NT 3.51 to Sun Microsystems' SPARC architecture, in conjunction with the company's planned introduction of UltraSPARC models in 1995, but neither version was sold to the public as a retail product.

Only two of the Windows NT 4.0 variants (IA-32 and Alpha) have a full set of service packs available. All of the other ports done by third parties (Motorola, Intergraph, etc.) have few, if any, publicly available updates.

Windows NT 4.0 was the last major release to support Alpha, MIPS, or PowerPC, though development of Windows 2000 for Alpha continued until August 1999, when Compaq stopped support for Windows NT on that architecture; and then three days later Microsoft also canceled their AlphaNT program, even though the Alpha NT 5 (Windows 2000) release had reached RC1 status.

On January 5, 2011, Microsoft announced that the next major version of the Windows NT family will include support for the ARM architecture. Microsoft demonstrated a preliminary version of Windows (version 6.2.7867) running on an ARM-based computer at the 2011 Consumer Electronics Show. This eventually led to the commercial release of the Windows 8-derived Windows RT on October 26, 2012, and the implementation of NT over CE on Windows Phone 8.

According to Microsoft, it is a common misconception that the Xbox and Xbox 360 use a modified Windows 2000 kernel. In reality, the Xbox operating system was built from scratch but implements a subset of Windows APIs. The Xbox One, and Xbox Series X/S, however, do use a modified version of Windows 10.

Windows 11 is the first non-server version of Windows NT to not support 32-bit platforms.

64-bit platforms

The 64-bit versions of Windows NT were originally intended to run on Itanium and DEC Alpha; the latter was used internally at Microsoft during early development of 64-bit Windows. This continued for some time after Microsoft publicly announced that it was cancelling plans to ship 64-bit Windows for Alpha. Because of this, Alpha versions of Windows NT are 32-bit only.

While Windows 2000 only supports Intel IA-32 (32-bit), Windows XP, Server 2003, Server 2008 and Server 2008 R2 each have one edition dedicated to Itanium-based systems. In comparison with Itanium, Microsoft adopted x64 on a greater scale: every version of Windows since Windows XP (which has a dedicated x64 edition) has x64 editions.

The first version of Windows NT which began supporting ARM64 devices with Qualcomm processors was Windows 10, version 1709. This is a full version of Windows, rather than the cut-down Windows RT.

Hardware requirements

The minimum hardware specification required to run each release of the professional workstation version of Windows NT has been fairly slow-moving until the 6.0 Vista release, which requires a minimum of 15 GB of free disk space, a 10-fold increase in free disk space alone over the previous version.

Windows NT minimum hardware requirements
Windows version CPU RAM Free disk space
NT 3.1 i386, 25 MHz 12 MB 90 MB
NT 3.1 Advanced Server 16 MB
NT 3.5 Workstation 12 MB
NT 3.5 Server 16 MB
NT 3.51 Workstation 12 MB
NT 3.51 Server 16 MB
NT 4.0 Workstation i486, 25 MHz 12 MB 124 MB
NT 4.0 Server 16 MB
2000 Professional Pentium, 133 MHz 32 MB 650 MB
2000 Server 128 MB
XP Pentium, 233 MHz 64 MB 1.5 GB
Server 2003 133 MHz 128 MB
Vista Home Basic 800 MHz 512 MB 20 GB
Vista (other editions) 1 GHz 1 GB 40 GB
7 for IA-32 16 GB
7 for x64 2 GB 20 GB
8 for IA-32 1 GHz with NX bit, SSE2, PAE 1 GB 16 GB
8 for x64 2 GB 20 GB
8.1 for IA-32 1 GB 16 GB
8.1 for x64 1 GHz with NX bit, SSE2, PAE, CMPXCHG16b, PrefetchW and LAHF/SAHF 2 GB 20 GB
10 for IA-32 (v1507-1809) 1 GHz with NX bit, SSE2, PAE 1 GB 16 GB
10 for x64 (v1507-1809) 1 GHz with NX bit, SSE2, PAE, CMPXCHG16b, PrefetchW and LAHF/SAHF 2 GB 20 GB
10 for IA-32 (v1903 and later) 1 GHz with NX bit, SSE2, PAE 1 GB 32 GB
10 for x64 (v1903 and later) 1 GHz with NX bit, SSE2, PAE, CMPXCHG16b, PrefetchW and LAHF/SAHF 2 GB
11 for x64 Intel 8th-Gen CPU or AMD Zen+-based CPU; Trusted Platform Module (TPM) 2.0 or equivalent crypto-processor 4 GB 64 GB
11 for ARM64 Qualcomm Snapdragon 850, 7c, 8c, 8cx; Microsoft SQ1, SQ2

Reboot

From Wikipedia, the free encyclopedia

In computing, rebooting is the process by which a running computer system is restarted, either intentionally or unintentionally. Reboots can be either a cold reboot (alternatively known as a hard reboot) in which the power to the system is physically turned off and back on again (causing an initial boot of the machine); or a warm reboot (or soft reboot) in which the system restarts while still powered up. The term restart (as a system command) is used to refer to a reboot when the operating system closes all programs and finalizes all pending input and output operations before initiating a soft reboot.

Terminology

Etymology

Early electronic computers (like the IBM 1401) had no operating system and little internal memory. The input was often a stack of punch cards or via a Switch Register. On systems with cards, the computer was initiated by pressing a start button that performed a single command - "read a card". This first card then instructed the machine to read more cards that eventually loaded a user program. This process was likened to an old saying, "picking yourself up by the bootstraps", referring to a horseman who lifts himself off the ground by pulling on the straps of his boots. This set of initiating punch cards was called "bootstrap cards". Thus a cold start was called booting the computer up. If the computer crashed, it was rebooted. The boot reference carried over to all subsequent types of computers.

Cold versus warm reboot

For IBM PC compatible computers, a cold boot is a boot process in which the computer starts from a powerless state, in which the system performs a power-on self-test (POST). Both the operating system and third-party software can initiate a cold boot; the restart command in Windows 9x initiates a cold reboot, unless Shift key is held.

A 'warm boot is initiated by the BIOS, either as a result of the Control-Alt-Delete key combination or directly through BIOS interrupt INT 19h. It does not perform a POST. Malware may prevent or subvert a warm boot by intercepting the Ctrl + Alt + Delete key combination and prevent it from reaching BIOS. The Windows NT family of operating systems also does the same and reserves the key combination for its own use.

The Linux family of operating systems supports an alternative to warm boot; the Linux kernel has optional support for kexec, a system call which transfers execution to a new kernel and skips hardware or firmware reset. The entire process occurs independently of the system firmware. The kernel being executed does not have to be a Linux kernel.

Outside the domain of IBM PC compatible computers, the types of boot may not be as clear. According to Sue Loh of Windows CE Base Team, Windows CE devices support three types of boots: Warm, cold and clean. A warm boot discards program memory. A cold boot additionally discards storage memory (also known as the "object store"), while a clean boot erases all forms of memory storage from the device. However, since these areas do not exist on all Windows CE devices, users are only concerned with two forms of reboot: one that resets the volatile memory and one that wipes the device clean and restores factory settings. For example, for a Windows Mobile 5.0 device, the former is a cold boot and the latter is a clean boot.

Hard reboot

A hard reboot means that the system is not shut down in an orderly manner, skipping file system synchronisation and other activities that would occur on an orderly shutdown. This can be achieved by either applying a reset, by cycling power, by issuing the halt -q command in most Unix-like systems, or by triggering a kernel panic.

Hard reboots are used in the cold boot attack.

Restart

The term "restart" is used by the Microsoft Windows and Linux families of operating systems to denote an operating system-assisted reboot. In a restart, the operating system ensures that all pending I/O operations are gracefully ended before commencing a reboot.

Causes

Deliberate

Redundant power supplies in a computer system reduce the risk of an unexpected loss of power

Users may deliberately initiate a reboot. Rationale for such action may include:

  • Troubleshooting: Rebooting may be used by users, support staff or system administrators as a technique to work around bugs in software, for example memory leaks or processes that hog resources to the detriment of the overall system, or to terminate malware. While this approach does not address the root cause of the issue, resetting a system back to a good, known state may allow it to be used again for some period until the issue next occurs.
  • Switching operating systems: On a multi-boot system without a hypervisor, a reboot is required to switch between installed operating systems.
  • Offensive: As stated earlier, components lose power during a cold reboot; therefore, components such as RAM that require power lose the data they hold. However, in a cold boot attack, special configurations may allow for part of the system state, like a RAM disk, to be preserved through the reboot.

The means of performing a deliberate reboot also vary and may include:

  • Manual, hardware-based: A power switch or reset button can cause the system to reboot. Doing so, however, may cause the loss of all unsaved data.
  • Manual, software-based: Computer software and operating system can trigger a reboot as well; more specifically, Microsoft Windows operating systems are outfitted with a restart command that closes open programs and eliminates data loss due to reboot.
  • Automated: Software can be scheduled to run at a certain time and date; therefore, it is possible to schedule a reboot.

Power failure

Unexpected loss of power for any reason (including power outage, power supply failure or depletion of battery on a mobile device) forces the system user to perform a cold boot once the power is restored. Some BIOSes have an option to automatically boot the system after a power failure. An uninterruptible power supply (UPS), backup battery or redundant power supply can prevent such circumstances.

Random reboot

"Random reboot" is a non-technical term referring to an unintended (and often undesired) reboot following a system crash, whose root cause may not immediately be evident to the user. Such crashes may occur due to a multitude of software and hardware problems, such as triple faults. They are generally symptomatic of an error in ring 0 that is not trapped by an error handler in an operating system or a hardware-triggered non-maskable interrupt.

Systems may be configured to reboot automatically after a power failure, or a fatal system error or kernel panic. The method by which this is done varies depending on whether the reboot can be handled via software or must be handled at the firmware or hardware level. Operating systems in the Windows NT family (from Windows NT 3.1 through Windows 7) have an option to modify the behavior of the error handler so that a computer immediately restarts rather than displaying a Blue Screen of Death (BSOD) error message. This option is enabled by default in some editions.

Hibernation

The introduction of advanced power management allowed operating systems greater control of hardware power management features. With Advanced Configuration and Power Interface (ACPI), newer operating systems are able to manage different power states and thereby sleep and/or hibernate. While hibernation also involves turning a system off then subsequently back on again, the operating system does not start from scratch, thereby differentiating this process from rebooting.

Simulated reboot

A reboot may be simulated by software running on an operating system. For example: the Sysinternals BlueScreen utility, which is used for pranking; or some modes of the bsod XScreenSaver "hack", for entertainment (albeit possibly concerning at first glance). Malware may also simulate a reboot, and thereby deceive a computer user for some nefarious purpose.

Microsoft App-V sequencing tool captures all the file system operations of an installer in order to create a virtualized software package for users. As part of the sequencing process, it will detect when an installer requires a reboot, interrupt the triggered reboot, and instead simulate the required reboot by restarting services and loading/unloading libraries.

Windows deviations and labeling criticism

Windows 8 & 10 enable (by default) a hibernation-like "Fast Startup" (a.k.a. "Fast Boot") which can cause problems (including confusion) for users accustomed to turning off computers to (cold) reboot them.

Stochastic differential equation

From Wikipedia, the free encyclopedia
https://en.wikipedia.org/wiki/Stochastic_differential_equation

A stochastic differential equation (SDE) is a differential equation in which one or more of the terms is a stochastic process, resulting in a solution which is also a stochastic process. SDEs have many applications throughout pure mathematics and are used to model various behaviours of stochastic models such as stock prices, random growth models or physical systems that are subjected to thermal fluctuations.

SDEs have a random differential that is in the most basic case random white noise calculated as the derivative of a Brownian motion or more generally a semimartingale. However, other types of random behaviour are possible, such as jump processes like Lévy processes or semimartingales with jumps. Random differential equations are conjugate to stochastic differential equations. Stochastic differential equations can also be extended to differential manifolds.

Background

Stochastic differential equations originated in the theory of Brownian motion, in the work of Albert Einstein and Marian Smoluchowski in 1905, although Louis Bachelier was the first person credited with modeling Brownian motion in 1900, giving a very early example of Stochastic Differential Equation now known as Bachelier model. Some of these early examples were linear stochastic differential equations, also called 'Langevin' equations after French physicist Langevin, describing the motion of a harmonic oscillator subject to a random force. The mathematical theory of stochastic differential equations was developed in the 1940s through the groundbreaking work of Japanese mathematician Kiyosi Itô, who introduced the concept of stochastic integral and initiated the study of nonlinear stochastic differential equations. Another approach was later proposed by Russian physicist Stratonovich, leading to a calculus similar to ordinary calculus.

Terminology

The most common form of SDEs in the literature is an ordinary differential equation with the right hand side perturbed by a term dependent on a white noise variable. In most cases, SDEs are understood as continuous time limit of the corresponding stochastic difference equations. This understanding of SDEs is ambiguous and must be complemented by a proper mathematical definition of the corresponding integral. Such a mathematical definition was first proposed by Kiyosi Itô in the 1940s, leading to what is known today as the Itô calculus. Another construction was later proposed by Russian physicist Stratonovich, leading to what is known as the Stratonovich integral. The Itô integral and Stratonovich integral are related, but different, objects and the choice between them depends on the application considered. The Itô calculus is based on the concept of non-anticipativeness or causality, which is natural in applications where the variable is time. The Stratonovich calculus, on the other hand, has rules which resemble ordinary calculus and has intrinsic geometric properties which render it more natural when dealing with geometric problems such as random motion on manifolds, although it is possible and in some cases preferable to model random motion on manifolds through Itô SDEs, for example when trying to optimally approximate SDEs on submanifolds.

An alternative view on SDEs is the stochastic flow of diffeomorphisms. This understanding is unambiguous and corresponds to the Stratonovich version of the continuous time limit of stochastic difference equations. Associated with SDEs is the Smoluchowski equation or the Fokker–Planck equation, an equation describing the time evolution of probability distribution functions. The generalization of the Fokker–Planck evolution to temporal evolution of differential forms is provided by the concept of stochastic evolution operator.

In physical science, there is an ambiguity in the usage of the term "Langevin SDEs". While Langevin SDEs can be of a more general form, this term typically refers to a narrow class of SDEs with gradient flow vector fields. This class of SDEs is particularly popular because it is a starting point of the Parisi–Sourlas stochastic quantization procedure,[10] leading to a N=2 supersymmetric model closely related to supersymmetric quantum mechanics. From the physical point of view, however, this class of SDEs is not very interesting because it never exhibits spontaneous breakdown of topological supersymmetry, i.e., (overdamped) Langevin SDEs are never chaotic.

Stochastic calculus

Brownian motion or the Wiener process was discovered to be exceptionally complex mathematically. The Wiener process is almost surely nowhere differentiable; thus, it requires its own rules of calculus. There are two dominating versions of stochastic calculus, the Itô stochastic calculus and the Stratonovich stochastic calculus. Each of the two has advantages and disadvantages, and newcomers are often confused whether the one is more appropriate than the other in a given situation. Guidelines exist (e.g. Øksendal, 2003) and conveniently, one can readily convert an Itô SDE to an equivalent Stratonovich SDE and back again. Still, one must be careful which calculus to use when the SDE is initially written down.

Numerical solutions

Numerical methods for solving stochastic differential equations include the Euler–Maruyama method, Milstein method, Runge–Kutta method (SDE), Rosenbrock method, and methods based on different representations of iterated stochastic integrals.

Use in physics

In physics, SDEs have wide applicability ranging from molecular dynamics to neurodynamics and to the dynamics of astrophysical objects. More specifically, SDEs describe all dynamical systems, in which quantum effects are either unimportant or can be taken into account as perturbations. SDEs can be viewed as a generalization of the dynamical systems theory to models with noise. This is an important generalization because real systems cannot be completely isolated from their environments and for this reason always experience external stochastic influence.

There are standard techniques for transforming higher-order equations into several coupled first-order equations by introducing new unknowns. Therefore, the following is the most general class of SDEs:

where is the position in the system in its phase (or state) space, , assumed to be a differentiable manifold, the is a flow vector field representing deterministic law of evolution, and is a set of vector fields that define the coupling of the system to Gaussian white noise, . If is a linear space and are constants, the system is said to be subject to additive noise, otherwise it is said to be subject to multiplicative noise. This term is somewhat misleading as it has come to mean the general case even though it appears to imply the limited case in which .

For a fixed configuration of noise, SDE has a unique solution differentiable with respect to the initial condition. Nontriviality of stochastic case shows up when one tries to average various objects of interest over noise configurations. In this sense, an SDE is not a uniquely defined entity when noise is multiplicative and when the SDE is understood as a continuous time limit of a stochastic difference equation. In this case, SDE must be complemented by what is known as "interpretations of SDE" such as Itô or a Stratonovich interpretations of SDEs. Nevertheless, when SDE is viewed as a continuous-time stochastic flow of diffeomorphisms, it is a uniquely defined mathematical object that corresponds to Stratonovich approach to a continuous time limit of a stochastic difference equation.

In physics, the main method of solution is to find the probability distribution function as a function of time using the equivalent Fokker–Planck equation (FPE). The Fokker–Planck equation is a deterministic partial differential equation. It tells how the probability distribution function evolves in time similarly to how the Schrödinger equation gives the time evolution of the quantum wave function or the diffusion equation gives the time evolution of chemical concentration. Alternatively, numerical solutions can be obtained by Monte Carlo simulation. Other techniques include the path integration that draws on the analogy between statistical physics and quantum mechanics (for example, the Fokker-Planck equation can be transformed into the Schrödinger equation by rescaling a few variables) or by writing down ordinary differential equations for the statistical moments of the probability distribution function.

Use in probability and mathematical finance

The notation used in probability theory (and in many applications of probability theory, for instance in signal processing with the filtering problem and in mathematical finance) is slightly different. It is also the notation used in publications on numerical methods for solving stochastic differential equations. This notation makes the exotic nature of the random function of time in the physics formulation more explicit. In strict mathematical terms, cannot be chosen as an ordinary function, but only as a generalized function. The mathematical formulation treats this complication with less ambiguity than the physics formulation.

A typical equation is of the form

where denotes a Wiener process (standard Brownian motion). This equation should be interpreted as an informal way of expressing the corresponding integral equation

The equation above characterizes the behavior of the continuous time stochastic process Xt as the sum of an ordinary Lebesgue integral and an Itô integral. A heuristic (but very helpful) interpretation of the stochastic differential equation is that in a small time interval of length δ the stochastic process Xt changes its value by an amount that is normally distributed with expectation μ(Xttδ and variance σ(Xtt)2 δ and is independent of the past behavior of the process. This is so because the increments of a Wiener process are independent and normally distributed. The function μ is referred to as the drift coefficient, while σ is called the diffusion coefficient. The stochastic process Xt is called a diffusion process, and satisfies the Markov property.

The formal interpretation of an SDE is given in terms of what constitutes a solution to the SDE. There are two main definitions of a solution to an SDE, a strong solution and a weak solution. Both require the existence of a process Xt that solves the integral equation version of the SDE. The difference between the two lies in the underlying probability space (). A weak solution consists of a probability space and a process that satisfies the integral equation, while a strong solution is a process that satisfies the equation and is defined on a given probability space.

An important example is the equation for geometric Brownian motion

which is the equation for the dynamics of the price of a stock in the Black–Scholes options pricing model of financial mathematics.

Generalizing the geometric Brownian motion, it is also possible to define SDEs admitting strong solutions and whose distribution is a convex combination of densities coming from different geometric Brownian motions or Black Scholes models, obtaining a single SDE whose solutions is distributed as a mixture dynamics of lognormal distributions of different Black Scholes models. This leads to models that can deal with the volatility smile in financial mathematics.

The simpler SDE called arithmetic Brownian motion

was used by Louis Bachelier as the first model for stock prices in 1900, known today as Bachelier model.

There are also more general stochastic differential equations where the coefficients μ and σ depend not only on the present value of the process Xt, but also on previous values of the process and possibly on present or previous values of other processes too. In that case the solution process, X, is not a Markov process, and it is called an Itô process and not a diffusion process. When the coefficients depends only on present and past values of X, the defining equation is called a stochastic delay differential equation.

A generalization of stochastic differential equations with the Fisk-Stratonovich integral to semimartingales with jumps are the SDEs of Marcus type. The Marcus integral is an extension of McShane's stochastic calculus.

An innovative application in stochastic finance derives from the usage of the equation for Ornstein–Uhlenbeck process

which is the equation for the dynamics of the return of the price of a stock under the hypothesis that returns display a Log-normal distribution. Under this hypothesis, the methodologies developed by Marcello Minenna determines prediction interval able to identify abnormal return that could hide market abuse phenomena.

SDEs on manifolds

More generally one can extend the theory of stochastic calculus onto differential manifolds and for this purpose one uses the Fisk-Stratonovich integral. Consider a manifold , some finite-dimensional vector space , a filtered probability space with satisfying the usual conditions and let be the one-point compactification and be -measurable. A stochastic differential equation on written

is a pair , such that

  • is a continuous -valued semimartingale,
  • is a homomorphism of vector bundles over .

For each the map is linear and for each .

A solution to the SDE on with initial condition is a continuous -adapted -valued process up to life time , s.t. for each test function the process is a real-valued semimartingale and for each stopping time with the equation

holds -almost surely, where is the differential at . It is a maximal solution if the life time is maximal, i.e.,

-almost surely. It follows from the fact that for each test function is a semimartingale, that is a semimartingale on . Given a maximal solution we can extend the time of onto full and after a continuation of on we get

up to indistinguishable processes. Although Stratonovich SDEs are the natural choice for SDEs on manifolds, given that they satisfy the chain rule and that their drift and diffusion coefficients behave as vector fields under changes of coordinates, there are cases where Ito calculus on manifolds is preferable. A theory of Ito calculus on manifolds was first developed by Laurent Schwartz through the concept of Schwartz morphism, see also the related 2-jet interpretation of Ito SDEs on manifolds based on the jet-bundle. This interpretation is helpful when trying to optimally approximate the solution of an SDE given on a large space with the solutions of an SDE given on a submanifold of that space, in that a Stratonovich based projection does not result to be optimal. This has been applied to the filtering problem, leading to optimal projection filters.

SDEs as rough paths

Usually the solution of an SDE requires a probabilistic setting, as the integral implicit in the solution is a stochastic integral. If it were possible to deal with the differential equation path by path, one would not need to define a stochastic integral and one could develop a theory independently of probability theory. This points to considering the SDE

as a single deterministic differential equation for every , where is the sample space in the given probability space (). However, a direct path-wise interpretation of the SDE is not possible, as the Brownian motion paths have unbounded variation and are nowhere differentiable with probability one, so that there is no naive way to give meaning to terms like , precluding also a naive path-wise definition of the stochastic integral as an integral against every single . However, motivated by the Wong-Zakai result for limits of solutions of SDEs with regular noise and using rough paths theory, while adding a chosen definition of iterated integrals of Brownian motion, it is possible to define a deterministic rough integral for every single that coincides for example with the Ito integral with probability one for a particular choice of the iterated Brownian integral. Other definitions of the iterated integral lead to deterministic pathwise equivalents of different stochastic integrals, like the Stratonovich integral. This has been used for example in financial mathematics to price options without probability.

Existence and uniqueness of solutions

As with deterministic ordinary and partial differential equations, it is important to know whether a given SDE has a solution, and whether or not it is unique. The following is a typical existence and uniqueness theorem for Itô SDEs taking values in n-dimensional Euclidean space Rn and driven by an m-dimensional Brownian motion B; the proof may be found in Øksendal (2003, §5.2).

Let T > 0, and let

be measurable functions for which there exist constants C and D such that

for all t ∈ [0, T] and all x and y ∈ Rn, where

Let Z be a random variable that is independent of the σ-algebra generated by Bs, s ≥ 0, and with finite second moment:

Then the stochastic differential equation/initial value problem

has a P-almost surely unique t-continuous solution (tω) ↦ Xt(ω) such that X is adapted to the filtration FtZ generated by Z and Bs, s ≤ t, and

General case: local Lipschitz condition and maximal solutions

The stochastic differential equation above is only a special case of a more general form

where

  • is a continuous semimartingale in and is a continuous semimartingal in
  • is a map from some open nonempty set , where is the space of all linear maps from to .

More generally one can also look at stochastic differential equations on manifolds.

Whether the solution of this equation explodes depends on the choice of . Suppose satisfies some local Lipschitz condition, i.e., for and some compact set and some constant the condition

where is the Euclidean norm. This condition guarantees the existence and uniqueness of a so-called maximal solution.

Suppose is continuous and satisfies the above local Lipschitz condition and let be some initial condition, meaning it is a measurable function with respect to the initial σ-algebra. Let be a predictable stopping time with almost surely. A -valued semimartingale is called a maximal solution of

with life time if

  • for one (and hence all) announcing the stopped process is a solution to the stopped stochastic differential equation
  • on the set we have almost surely that with .

is also a so-called explosion time.

Some explicitly solvable SDEs

Linear SDE: general case

where

Reducible SDEs: Case 1

for a given differentiable function is equivalent to the Stratonovich SDE

which has a general solution

where

Reducible SDEs: Case 2

for a given differentiable function is equivalent to the Stratonovich SDE

which is reducible to

where where is defined as before. Its general solution is

SDEs and supersymmetry

In supersymmetric theory of SDEs, stochastic dynamics is defined via stochastic evolution operator acting on the differential forms on the phase space of the model. In this exact formulation of stochastic dynamics, all SDEs possess topological supersymmetry which represents the preservation of the continuity of the phase space by continuous time flow. The spontaneous breakdown of this supersymmetry is the mathematical essence of the ubiquitous dynamical phenomenon known across disciplines as chaos, turbulence, self-organized criticality etc. and the Goldstone theorem explains the associated long-range dynamical behavior, i.e., the butterfly effect, 1/f and crackling noises, and scale-free statistics of earthquakes, neuroavalanches, solar flares etc.

Politics of Europe

From Wikipedia, the free encyclopedia ...