Misplaced Pages

Guru Meditation

Article snapshot taken from Wikipedia with creative commons attribution-sharealike license. Give it a read and then ask your questions in the chat. We can research this topic together.

Guru Meditation is an error notice originally displayed by the Amiga computer when it crashes . It is now also used by Varnish , a software component used by many content-heavy websites. This has led to many internet users seeing a "Guru Meditation" message (or the variant "Guru Mediation") when these websites suffer crashes or other issues. It is analogous to the " Blue Screen of Death " in Microsoft Windows operating systems , or a kernel panic in Unix .

#329670

60-545: It has also been used as a message for unrecoverable errors in software packages such as VirtualBox and other operating systems (see Legacy section below). The term "Guru Meditation Error" originated as an in-house joke in Amiga's early days. The company had a product called the Joyboard for the Atari 2600 home video game console , a game controller much like a joystick but operated by

120-440: A dynamic recompiler , based on QEMU to recompile any real mode or protected mode code entirely (e.g. BIOS code, a DOS guest, or any operating system startup). Using these techniques, VirtualBox could achieve performance comparable to that of VMware in its later versions. The feature was dropped starting with VirtualBox 6.1. Storage support includes: The supported operating systems include: Some features require

180-541: A "Guest Additions" package of device drivers and system applications is available, which typically improves performance, especially that of graphics, and allows changing the resolution of the guest OS automatically when the window of the virtual machine on the host OS is resized. Released under the terms of the GNU General Public License and, optionally, the CDDL for most files of the source distribution, VirtualBox

240-588: A custom virtual graphics-card that is VBE or UEFI GOP compatible. The Guest Additions for Windows, Linux, Solaris, OpenSolaris, and OS/2 guests include a special video-driver that increases video performance and includes additional features, such as automatically adjusting the guest resolution when resizing the VM window and desktop composition via virtualized WDDM drivers. For an Ethernet network adapter, VirtualBox virtualizes these Network Interface Cards : The emulated network cards allow most guest OSs to run without

300-569: A distinction between hypervisor and virtual machine monitor (VMM). There, both components form the overall virtualization stack of a certain system. Hypervisor refers to kernel-space functionality and VMM to user-space functionality. Specifically in these contexts, a hypervisor is a microkernel implementing virtualization infrastructure that must run in kernel-space for technical reasons, such as Intel VMX . Microkernels implementing virtualization mechanisms are also referred to as microhypervisor . Applying this terminology to Linux , KVM

360-503: A full virtualization of all kernel tasks, including I/O and interrupt handling. (Note that the "official" operating system, the ill-fated TSS/360 , did not employ full virtualization.) Both CP-40 and CP-67 began production use in 1967. CP/CMS was available to IBM customers from 1968 to early 1970s, in source code form without support. CP/CMS formed part of IBM's attempt to build robust time-sharing systems for its mainframe computers. By running multiple operating systems concurrently,

420-696: A further requirement for small memory-size and low overhead. Finally, in contrast to the ubiquity of the x86 architecture in the PC world, the embedded world uses a wider variety of architectures and less standardized environments. Support for virtualization requires memory protection (in the form of a memory management unit or at least a memory protection unit) and a distinction between user mode and privileged mode , which rules out most microcontrollers . This still leaves x86 , MIPS , ARM and PowerPC as widely deployed architectures on medium- to high-end embedded systems. As manufacturers of embedded systems usually have

480-413: A global view of scheduling and power management, and fine-grained control of information flows. The use of hypervisor technology by malware and rootkits installing themselves as a hypervisor below the operating system, known as hyperjacking , can make them more difficult to detect because the malware could intercept any operations of the operating system (such as someone entering a password) without

540-407: A host network adapter or virtual networks between guests can also be configured. Up to 36 network adapters can be attached simultaneously, but only four are configurable through the graphical interface. For a sound card, VirtualBox virtualizes Intel HD Audio, Intel ICH AC'97, and SoundBlaster 16 devices. A USB 1.1 controller is emulated, so that any USB devices attached to the host can be seen in

600-399: A number of mechanisms including a common clipboard and a virtualized network facility. Guest VMs can also directly communicate with each other if configured to do so. VirtualBox supports both Intel 's VT-x and AMD 's AMD-V hardware-assisted virtualization. Making use of these facilities, VirtualBox can run each guest VM in its own separate address-space; the guest OS ring 0 code runs on

660-400: A rare series of events, as in when a deprecated Kickstart (example: 1.1) program conditionally boots from disk on a more advanced Kickstart 3.x ROM Amiga running in compatibility mode (therefore eschewing the on-disk OS) and crashes with a red Guru Meditation but subsequently restores itself by pressing the left mouse button, the newer Kickstart recognizing an inadvised low level chipset call for

SECTION 10

#1732876975330

720-494: A series of disputed and bitter battles , time-sharing lost out to batch processing through IBM political infighting, and VM remained IBM's "other" mainframe operating system for decades, losing to MVS . It enjoyed a resurgence of popularity and support from 2000 as the z/VM product, for example as the platform for Linux on IBM Z . As mentioned above, the VM control program includes a hypervisor-call handler that intercepts DIAG ("Diagnose", opcode x'83') instructions used within

780-414: A single host operating-system (host OS). Each guest can be started, paused and stopped independently within its own virtual machine (VM). The user can independently configure each VM and run it under a choice of software-based virtualization or hardware assisted virtualization if the underlying host hardware supports this. The host OS and guest OSs and applications can communicate with each other through

840-412: A single physical x86 machine. This contrasts with operating-system–level virtualization , where all instances (usually called containers ) must share a single kernel, though the guest operating systems can differ in user space , such as different Linux distributions with the same kernel. The term hypervisor is a variant of supervisor , a traditional term for the kernel of an operating system :

900-546: A system software error. The second can be the address of a Task structure, or the address of a memory block whose allocation or deallocation failed. It is never the address of the code that caused the error. If the cause of the crash is uncertain, this number is rendered as 48454C50 , which stands for "HELP" in hexadecimal ASCII characters (48=H, 45=E, 4C=L, 50=P). There was a commercially available error handler for AmigaOS, before version 2.04, called GOMF (Get Outta My Face) made by Hypertek/Silicon Springs Development corp. It

960-459: A virtual machine. This provides fast-path non-virtualized execution of file-system access and other operations (DIAG is a model-dependent privileged instruction, not used in normal programming, and thus is not virtualized. It is therefore available for use as a signal to the "host" operating system). When first implemented in CP/CMS release 3.1, this use of DIAG provided an operating system interface that

1020-570: Is free and open-source software , though the Extension Pack is proprietary software , free of charge only to personal users. The License to VirtualBox was relicensed to GPLv3 with linking exceptions to the CDDL and other GPL-incompatible licenses. VirtualBox was first offered by InnoTek Systemberatung GmbH, a German company based in Weinstadt , under a proprietary software license, making one version of

1080-430: Is free software under GNU General Public License version 2 (GPLv2). A supplementary package, under a proprietary license, adds support for USB 2.0 and 3.0 devices, Remote Desktop Protocol (RDP), disk encryption, NVMe , and Preboot Execution Environment (PXE). This package is called "VirtualBox Oracle VM VirtualBox extension pack". It includes closed-source components, so it is not source-available . The license

1140-481: Is a hypervisor and QEMU or Cloud Hypervisor are VMMs utilizing KVM as hypervisor. In his 1973 thesis, "Architectural Principles for Virtual Computer Systems," Robert P. Goldberg classified two types of hypervisor: The distinction between these two types is not always clear. For instance, KVM and bhyve are kernel modules that effectively convert the host operating system to a type-1 hypervisor. The first hypervisors providing full virtualization were

1200-399: Is a minimalist debugger built into the operating system which is accessible by connecting a 9600 bit /s terminal to the serial port . The alert itself appears as a black rectangular box located in the upper portion of the screen. Its border and text are red for a normal Guru Meditation, or green/yellow for a Recoverable Alert, another kind of Guru Meditation. The screen may go black, but

1260-593: Is called Personal Use and Evaluation License (PUEL) . It allows gratis access for personal use, educational use, and evaluation. Since VirtualBox version 5.1.30, Oracle defines personal use as installation on a single computer for non-commercial purposes. Prior to version 4, there were two different packages of the VirtualBox software. The full package was offered gratis under the PUEL, with licenses for other commercial deployment purchasable from Oracle. A second package called

SECTION 20

#1732876975330

1320-427: Is called a guest machine . The hypervisor presents the guest operating systems with a virtual operating platform and manages the execution of the guest operating systems. Unlike an emulator , the guest executes most instructions on the native hardware. Multiple instances of a variety of operating systems may share the virtualized hardware resources: for example, Linux , Windows , and macOS instances can all run on

1380-722: Is heavily discouraged, because Integrity VM implements its own memory management, scheduling and I/O policies that are tuned for virtual machines and are not as effective for normal applications. HPE also provides more rigid partitioning of their Integrity and HP9000 systems by way of VPAR and nPar technology, the former offering shared resource partitioning and the latter offering complete I/O and processing isolation. The flexibility of virtual server environment (VSE) has given way to its use more frequently in newer deployments. IBM provides virtualization partition technology known as logical partitioning (LPAR) on System/390 , zSeries , pSeries and IBM AS/400 systems. For IBM's Power Systems,

1440-588: The Debian Free Software Guidelines do not consider it "free". VirtualBox has experimental support for macOS guests. However, macOS's end user license agreement does not permit running on non-Apple hardware. The operating system enforces this by calling the Apple System Management Controller (SMC), to verify the hardware's authenticity. All Apple machines have an SMC. Users of VirtualBox can load multiple guest OSes under

1500-567: The POWER6 processor. LPAR and MSPP capacity allocations can be dynamically changed. Memory is allocated to each LPAR (at LPAR initiation or dynamically) and is address-controlled by the POWER Hypervisor. For real-mode addressing by operating systems ( AIX , Linux , IBM i ), the Power processors ( POWER4 onwards) have designed virtualization capabilities where a hardware address-offset is evaluated with

1560-720: The VirtualBox Open Source Edition (OSE) was released under GPLv2. This removed the same proprietary components not available under GPLv2. Since version 4.2 , building the BIOS for VirtualBox requires the Open Watcom compiler, which is released under the Sybase Open Watcom Public License . The Open Source Initiative has approved this as "Open Source" but the Free Software Foundation and

1620-569: The virtual memory feature needed for virtualization, but added it in the August 1972 Advanced Function announcement. Virtualization has been featured in all successor systems, such that all modern-day IBM mainframes, including the zSeries line, retain backward compatibility with the 1960s-era IBM S/360 line. The 1972 announcement also included VM/370 , a reimplementation of CP/CMS for the S/370. Unlike CP/CMS , IBM provided support for this version (though it

1680-747: The "additions" code in both Windows Virtual PC and Microsoft Virtual Server , which enables various host–guest OS interactions like shared clipboards or dynamic viewport resizing. Sun Microsystems acquired InnoTek in February 2008. Following the acquisition of Sun Microsystems by Oracle Corporation in January 2010, the product was re-branded as "Oracle VM VirtualBox". In December 2019, VirtualBox removed support for software-based virtualization and exclusively performs hardware-assisted virtualization . The core package, since version 4 in December 2010,

1740-400: The Extension Pack is installed on the host running VirtualBox. Hosted hypervisor A hypervisor , also known as a virtual machine monitor ( VMM ) or virtualizer , is a type of computer software , firmware or hardware that creates and runs virtual machines . A computer on which a hypervisor runs one or more virtual machines is called a host machine , and each virtual machine

1800-535: The Integrity VM hypervisor layer that allows for many important features of HP-UX to be taken advantage of and provides major differentiation between this platform and other commodity platforms - such as processor hotswap, memory hotswap, and dynamic kernel updates without system reboot. While it heavily leverages HP-UX, the Integrity VM hypervisor is really a hybrid that runs on bare-metal while guests are executing. Running normal HP-UX applications on an Integrity VM host

1860-894: The OS address-offset to arrive at the physical memory address. Input/Output (I/O) adapters can be exclusively "owned" by LPARs or shared by LPARs through an appliance partition known as the Virtual I/O Server (VIOS). The Power Hypervisor provides for high levels of reliability, availability and serviceability (RAS) by facilitating hot add/replace of many parts (model dependent: processors, memory, I/O adapters, blowers, power units, disks, system controllers, etc.) Similar trends have occurred with x86/x86-64 server platforms, where open-source projects such as Xen have led virtualization efforts. These include hypervisors built on Linux and Solaris kernels as well as custom kernels. Since these technologies span from large systems down to desktops, they are described in

Guru Meditation - Misplaced Pages Continue

1920-483: The POWER Hypervisor (PHYP) is a native (bare-metal) hypervisor in firmware and provides isolation between LPARs. Processor capacity is provided to LPARs in either a dedicated fashion or on an entitlement basis where unused capacity is harvested and can be re-allocated to busy workloads. Groups of LPARs can have their processor capacity managed as if they were in a "pool" - IBM refers to this capability as Multiple Shared-Processor Pools (MSPPs) and implements it in servers with

1980-459: The absence of hardware-assisted virtualization, versions 6.0.24 and earlier of VirtualBox could adopt a standard software-based virtualization approach. This mode supports 32-bit guest operating systems which run in rings 0 and 3 of the Intel ring architecture. In both cases, VirtualBox uses CSAM and PATM to inspect and patch the offending instructions whenever a fault occurs. VirtualBox also contains

2040-523: The anti-malware software necessarily detecting it (since the malware runs below the entire operating system). Implementation of the concept has allegedly occurred in the SubVirt laboratory rootkit (developed jointly by Microsoft and University of Michigan researchers ) as well as in the Blue Pill malware package. However, such assertions have been disputed by others who claim that it would be possible to detect

2100-522: The feet, similar to the Wii Balance Board . Early in the development of the Amiga computer operating system, the company's developers became so frustrated with the system's frequent crashes that, as a relaxation technique, a game was developed where a person would sit cross-legged on the Joyboard, resembling an Indian guru . The player tried to remain extremely still; the winner of the game stayed still

2160-447: The guest. The proprietary extension pack adds a USB 2.0 or USB 3.0 controller and, if VirtualBox acts as an RDP server, it can also use USB devices on the remote RDP client, as if they were connected to the host, although only if the client supports this VirtualBox-specific extension (Oracle provides clients for Solaris, Linux, and Sun Ray thin clients that can do this, and has promised support for other platforms in future versions). In

2220-494: The hardware's supervisor state was virtualized as well, allowing multiple operating systems to run concurrently in separate virtual machine contexts. Programmers soon implemented CP-40 (as CP-67 ) for the IBM System/360-67 , the first production computer system capable of full virtualization. IBM shipped this machine in 1966; it included page-translation-table hardware for virtual memory and other techniques that allowed

2280-636: The host at ring 0 in VMX non-root mode rather than in ring 1. Starting with version 6.1, VirtualBox only supports this method. Until then, VirtualBox specifically supported some guests (including 64-bit guests, SMP guests and certain proprietary OSs) only on hosts with hardware-assisted virtualization . VirtualBox emulates hard disks in three formats: the native VDI (Virtual Disk Image), VMware 's VMDK , and Microsoft 's VHD . It thus supports disks created by other hypervisor software. VirtualBox can also connect to iSCSI targets and to raw partitions on

2340-524: The host, using either as virtual hard disks. VirtualBox emulates IDE (PIIX4 and ICH6 controllers), SCSI , SATA (ICH8M controller), and SAS controllers, to which hard drives can be attached. VirtualBox has supported Open Virtualization Format (OVF) since version 2.2.0 (April 2009). Both ISO images and physical devices connected to the host can be mounted as CD or DVD drives. VirtualBox supports running operating systems from live CDs and DVDs . By default, VirtualBox provides graphics support through

2400-814: The hypervisor (and can all run simultaneously on the same processor, as fully virtualized independent guest OSes). Wind River "Carrier Grade Linux" also runs on Sun's Hypervisor. Full virtualization on SPARC processors proved straightforward: since its inception in the mid-1980s Sun deliberately kept the SPARC architecture clean of artifacts that would have impeded virtualization. (Compare with virtualization on x86 processors below.) HPE provides HP Integrity Virtual Machines (Integrity VM) to host multiple operating systems on their Itanium powered Integrity systems. Itanium can run HP-UX , Linux, Windows and OpenVMS , and these environments are also supported as virtual servers on HP's Integrity VM platform. The HP-UX operating system hosts

2460-473: The hypervisor increased system robustness and stability: Even if one operating system crashed, the others would continue working without interruption. Indeed, this even allowed beta or experimental versions of operating systems‍—‌or even of new hardware ‍—‌to be deployed and debugged, without jeopardizing the stable main production system, and without requiring costly additional development systems. IBM announced its System/370 series in 1970 without

Guru Meditation - Misplaced Pages Continue

2520-483: The hypervisor is the supervisor of the supervisors, with hyper- used as a stronger variant of super- . The term dates to circa 1970; IBM coined it for software that ran OS/360 and the 7090 emulator concurrently on the 360/65 and later used it for the DIAG handler of CP-67. In the earlier CP/CMS (1967) system, the term Control Program was used instead. Some literature, especially in microkernel contexts, makes

2580-802: The hypervisor simulates. This is called paravirtualization in Xen , a "hypercall" in Parallels Workstation , and a "DIAGNOSE code" in IBM VM . Some microkernels, such as Mach and L4 , are flexible enough to allow paravirtualization of guest operating systems. Embedded hypervisors , targeting embedded systems and certain real-time operating system (RTOS) environments, are designed with different requirements when compared to desktop and enterprise systems, including robustness, security and real-time capabilities. The resource-constrained nature of many embedded systems, especially battery-powered mobile systems, imposes

2640-579: The installation of the closed-source "VirtualBox Extension Pack": While VirtualBox itself is free to use and is distributed under an open source license the VirtualBox Extension Pack is licensed under the VirtualBox Personal Use and Evaluation License (PUEL). Personal use of the extension pack is free but commercial users need to purchase a license. Guest Additions are installed within each guest virtual machine which supports them;

2700-518: The longest. If the player moved too much, a "guru meditation" error occurred. The alert occurred when there was a fatal problem with the system. If the system had no means of recovery, it could display the alert, even in systems with numerous critical flaws. In extreme cases, the alert could even be displayed if the system's memory was completely exhausted. The text of the alert messages was completely baffling to most users. Only highly technically adept Amiga users would know, for example, that exception 3

2760-474: The multimillion-dollar range at the high end), although virtualization has also been available on some low- and mid-range systems, such as IBM pSeries servers, HP Superdome series machines, and Sun / Oracle T-series CoolThreads servers. Although Solaris has always been the only guest domain OS officially supported by Sun/Oracle on their Logical Domains hypervisor, as of late 2006 , Linux (Ubuntu and Gentoo), and FreeBSD have been ported to run on top of

2820-524: The need to find and install drivers for networking hardware as they are shipped as part of the guest OS. A special paravirtualized network adapter is also available, which improves network performance by eliminating the need to match a specific hardware interface, but requires special driver support in the guest. (Many distributions of Linux ship with this driver included.) By default, VirtualBox uses NAT through which Internet software for end-users such as Firefox or ssh can operate. Bridged networking via

2880-505: The next section. X86 virtualization was introduced in the 1990s, with its emulation being included in Bochs . Intel and AMD released their first x86 processors with hardware virtualisation in 2005 with Intel VT-x (code-named Vanderpool) and AMD-V (code-named Pacifica). An alternative approach requires modifying the guest operating system to make a system call to the underlying hypervisor, rather than executing machine I/O instructions that

2940-480: The older ROM directly poking the hardware, and addressing it. The error is displayed as two fields , separated by a period. The format is #0000000x.yyyyyyyy in case of a CPU error, or #aabbcccc.dddddddd in case of a system software error. The first field is either the Motorola 68000 exception number that occurred (if a CPU error occurs) or an internal error identifier (such as an "Out of Memory" code), in case of

3000-458: The power LEDs always alternates between full and half-brightness for a few seconds before the alert appears. In AmigaOS 1.x, programmed in ROMs known as Kickstart 1.1, 1.2 and 1.3, the errors are always red. In AmigaOS 2.x and 3.x, recoverable alerts are yellow, except for some very early versions of 2.x where they were green. Dead-end alerts are always red and terminal in all OS versions except in

3060-636: The product available at no cost for personal or evaluation use, subject to the VirtualBox Personal Use and Evaluation License (PUEL). In January 2007, based on counsel by LiSoG , InnoTek released VirtualBox Open Source Edition (OSE) as free and open-source software , subject to the requirements of the GNU General Public License (GPL), version 2. InnoTek also contributed to the development of OS/2 and Linux support in virtualization and OS/2 ports of products from Connectix which were later acquired by Microsoft . Specifically, InnoTek developed

SECTION 50

#1732876975330

3120-662: The source code to their operating systems, they have less need for full virtualization in this space. Instead, the performance advantages of paravirtualization make this usually the virtualization technology of choice. Nevertheless, ARM and MIPS have recently added full virtualization support as an IP option and has included it in their latest high-end processors and architecture versions, such as ARM Cortex-A15 MPCore and ARMv8 EL2. Other differences between virtualization in server/desktop and embedded environments include requirements for efficient sharing of resources across virtual machines, high-bandwidth, low-latency inter-VM communication,

3180-407: The system may be in an unpredictable state that can cause data corruption. The first byte specifies the area of the system affected. The top bit will be set if the error is a dead end alert. VirtualBox Oracle VirtualBox (formerly Sun VirtualBox , Sun xVM VirtualBox and InnoTek VirtualBox ) is a hosted hypervisor for x86 virtualization developed by Oracle Corporation . VirtualBox

3240-682: The test tool SIMMON and the one-off IBM CP-40 research system, which began production use in January 1967 and became the first version of the IBM CP/CMS operating system. CP-40 ran on a S/360-40 modified at the Cambridge Scientific Center to support dynamic address translation , a feature that enabled virtualization. Prior to this time, computer hardware had only been virtualized to the extent to allow multiple user applications to run concurrently, such as in CTSS and IBM M44/44X . With CP-40,

3300-423: The user from all errors, as one may have still seen this error occasionally. Recoverable Alerts are non-critical crashes in the computer system. In most cases, it is possible to resume work and save files after a Recoverable Alert, while a normal, red Guru Meditation always results in an immediate reboot. It is, however, still recommended to reboot as soon as possible after encountering a Recoverable Alert, because

3360-485: Was able to deal with many kinds of errors and gave the user a choice to either remove the offending process and associated screen, or allow the machine to show the Guru Meditation. In many cases, removal of the offending process gave one the choice to save one's data and exit running programs before rebooting the system. When the damage was not extensive, one was able to continue using the machine. However, it did not save

3420-423: Was an address error, and meant the program was accessing a word on an unaligned boundary. Users without this specialized knowledge would have no recourse but to look for a "Guru" or to simply reboot the machine and hope for the best. When a Guru Meditation is displayed, the options are to reboot by pressing the left mouse button, or to invoke ROMWack by pressing the right mouse button or to manually reboot. ROMWack

3480-701: Was analogous to the System/360 Supervisor Call instruction (SVC), but that did not require altering or extending the system's virtualization of SVC. In 1985 IBM introduced the PR/SM hypervisor to manage logical partitions (LPAR). Several factors led to a resurgence around 2005 in the use of virtualization technology among Unix , Linux , and other Unix-like operating systems: Major Unix vendors, including HP , IBM , SGI , and Sun Microsystems , have been selling virtualized hardware since before 2000. These have generally been large, expensive systems (in

3540-547: Was originally created by InnoTek Systemberatung GmbH, which was acquired by Sun Microsystems in 2008, which was in turn acquired by Oracle in 2010. VirtualBox may be installed on Microsoft Windows , macOS , Linux , Solaris and OpenSolaris . There are also ports to FreeBSD and Genode . It supports the creation and management of guest virtual machines running Windows, Linux, BSD , OS/2 , Solaris, Haiku , and OSx86 , as well as limited virtualization of macOS guests on Apple hardware. For some guest operating systems,

3600-502: Was still distributed in source code form for several releases). VM stands for Virtual Machine , emphasizing that all, not just some, of the hardware interfaces are virtualized. Both VM and CP/CMS enjoyed early acceptance and rapid development by universities, corporate users, and time-sharing vendors, as well as within IBM. Users played an active role in ongoing development, anticipating trends seen in modern open source projects. However, in

#329670