Search This Blog

Sunday, January 12, 2020

Window manager

From Wikipedia, the free encyclopedia
 
Layers of the graphical user interface:
Under X, the window manager and the display server are two distinct programs; but under Wayland, the function of both is handled by the Wayland compositor.
 
Typical elements of a window. The window decoration is either drawn by the window manager (X11) or by the client (Weston). The drawing of the content is the task of the client.
 
Under X11, when the window manager is not running, the window decorations are missing for most windows. Under Weston clients always draw their own window decorations.

A window manager is a system software that controls the placement and appearance of windows within a windowing system in a graphical user interface. Most window managers are designed to help provide a desktop environment. They work in conjunction with the underlying graphical system that provides required functionality—support for graphics hardware, pointing devices, and a keyboard, and are often written and created using a widget toolkit

Few window managers are designed with a clear distinction between the windowing system and the window manager. Every graphical user interface based on a windows metaphor has some form of window management. In practice, the elements of this functionality vary greatly. Elements usually associated with window managers allow the user to open, close, minimize, maximize, move, resize, and keep track of running windows, including window decorators. Many window managers also come with various utilities and features: e.g. docks, task bars, program launchers, desktop icons, and wallpaper. 

History

Overlapping windows of Smalltalk-76 environment running on Alto
 
In the 1970s, the Xerox Alto became the first computer shipped with a working WIMP GUI. It used a stacking window manager that allowed overlapping windows. While it is unclear if Microsoft Windows contains designs copied from Apple's Mac OS, it is clear that neither was the first to produce a GUI using stacking windows. In the early 1980s, the Xerox Star, successor to the Alto, used tiling for most main application windows, and used overlapping only for dialogue boxes, removing most of the need for stacking.

Mac OS was one of the earliest commercially successful examples of a GUI that used a sort of stacking window management via QuickDraw. Currently macOS uses a somewhat more advanced window manager that has supported compositing since Mac OS X 10.0, and was updated in Mac OS X 10.2 to support hardware accelerated compositing via the Quartz Compositor.

GEM 1.1 was a window manager that supported the desktop metaphor, and used stacking, allowing all windows to overlap. It was released in the early 1980s. GEM is famous for having been included as the main GUI used on the Atari ST, which ran Atari TOS, and was also a popular GUI for MS-DOS prior to the widespread use of Microsoft Windows. As a result of a lawsuit by Apple, GEM was forced to remove the stacking capabilities, making it a tiling window manager.

During the mid-1980s, Amiga OS contained an early example of a compositing window manager called Intuition (one of the low-level libraries of AmigaOS, which was present in Amiga system ROMs), capable of recognizing which windows or portions of them were covered, and which windows were in the foreground and fully visible, so it could draw only parts of the screen that required refresh. Additionally, Intuition supported compositing. Applications could first request a region of memory outside the current display region for use as bitmap. The Amiga windowing system would then use a series of bit blits using the system's hardware blitter to build a composite of these applications' bitmaps, along with buttons and sliders, in display memory, without requiring these applications to redraw any of their bitmaps.

Intuition also anticipated the choices of the user by recognizing the position of the pointer floating over other elements of the screen (title bars of windows, their close and resizing gadgets, whole icons), and thus it was capable of granting nearly a zero-wait state experience to the use of the Workbench window manager. 

Noteworthy to mention is the fact that Workbench was the only window manager that eventually inspired an entire family of descendant and successors: Ambient in MorphOS, Zune/Wanderer in AROS, Workbench NG (New Generation in AmigaOS 4.0 and 4.1). Workbench 4.1 was enhanced by 2D vector interface powered by Cairo libraries, and presenting a modern Porter-Duff 3D based Compositing Engine. 

In 1988, Presentation Manager became the default shell in OS/2, which, in its first version, only used a command line interface (CLI). IBM and Microsoft designed OS/2 as a successor to DOS and Windows for DOS. After the success of the Windows 3.10, however, Microsoft abandoned the project in favor of Windows. After that, the Microsoft project for a future OS/2 version 3 became Windows NT, and IBM made a complete redesign of the shell of OS/2, substituting the Presentation Manager of OS/2 1.x for the object-oriented Workplace Shell that made its debut in the OS/2 2.0.

X window managers

On systems using the X window system, there is a clear distinction between the window manager and the windowing system. Strictly speaking, an X window manager does not directly interact with video hardware, mice, or keyboards – that is the responsibility of the display server

Users of the X Window System have the ability to easily use many different window managers – Metacity, used in GNOME 2, and KWin, used in KDE Plasma Workspaces, and many others. Since many window managers are modular, people can use others, such as Compiz (a 3D compositing window manager), which replaces the window manager. Sawfish and awesome on the other hand are extensible window managers offering exacting window control. Components of different window managers can even be mixed and matched; for example, the window decorations from KWin can be used with the desktop and dock components of GNOME.

X window managers also have the ability to re-parent applications, meaning that, while initially all applications are adopted by the root window (essentially the whole screen), an application started within the root window can be adopted by (i.e., put inside of) another window. Window managers under the X window system adopt applications from the root window and re-parent them to window decorations (for example, adding a title bar). Re-parenting can also be used to add the contents of one window to another. For example, a flash player application can be re-parented to a browser window, and can appear to the user as supposedly being part of that program. Re-parenting window managers can therefore arrange one or more programs into the same window, and can easily combine tiling and stacking in various ways.

Microsoft Windows

Microsoft Windows has provided an integrated stacking window manager since Windows 2.0; Windows Vista introduced the compositing Desktop Window Manager (dwm.exe) as an optional hardware-accelerated alternative. In Windows, the role of the window manager is tightly coupled with the kernel's graphical subsystems and is largely non-replaceable, although third-party utilities can be used to simulate a Tiling window manager on top of such systems. Since Windows 8, the Desktop Window Manager can no longer be disabled.

Windows Explorer (explorer.exe) is used by default in modern Windows systems to provide a panel and file manager, along with many functions of a window manager; aspects of Windows can be modified through the provided configuration utilities, modifying the Windows registry or with 3rd party tools, such as WindowBlinds or Resource Hacker

The Windows window manager can also act as an X window manager through Cygwin/X in multiwindow mode (and, possibly, other X window implementations).

Note that Microsoft and X Window System use different terms to describe similar concepts. For example, there is no specific word for window manager functionality in Windows (shell is sometimes used in this context, but its sense is fuzzy).

Types of window managers

Window managers are often divided into three or more classes, which describe how windows are drawn and updated. 

Compositing window managers

Compositing window managers let all windows be created and drawn separately and then put together and displayed in various 2D and 3D environments. The most advanced compositing window managers allow for a great deal of variety in interface look and feel, and for the presence of advanced 2D and 3D visual effects.

Stacking window managers

All window managers that have overlapping windows and are not compositing window managers are stacking window managers, although it is possible that not all use the same methods. Stacking window managers allow windows to overlap by drawing background windows first, which is referred to as the painter's algorithm. Changes sometimes require that all windows be re-stacked or repainted, which usually involves redrawing every window. However, to bring a background window to the front usually only requires that one window be redrawn, since background windows may have bits of other windows painted over them, effectively erasing the areas that are covered. 

Tiling window manager

Tiling window managers paint all windows on-screen by placing them side by side or above and below each other, so that no window ever covers another. Microsoft Windows 1.0 used tiling, and a variety of tiling window managers for X are available. 

Dynamic window manager

Dynamic window managers can dynamically switch between tiling or floating window layout. A variety of dynamic window managers for X are available. 

Features and facilities of window managers

Autohide
An autohide facility enables menubars to disappear when the pointer is moved away from the edge of the screen.
Borders
A border is a window decoration component provided by some window managers, that appears around the active window. Some window managers may also display a border around background windows.
Context Menu
Some window managers provide a context menu that appears when an alternative click event is applied to a desktop component.
Desktop Wallpaper
Some window managers provide a desktop wallpaper facility that displays a background picture in the root window.
Focus Stealing
Focus stealing is a facility some window managers provide. It allows an application not in focus to suddenly gain focus and steal user input intended for the previously focused application.
Iconification
An iconification facility lets users minimize running applications to a desktop icon or taskpanel icon.
Joined Windows
Some window managers provide a joined windows facility that lets user join application window frames together.
Keyboard Equivalents
Some window managers provide keyboard equivalents that enables the keyboard to replicate mouse functionality.
Menubar
A menubar provides the facility to launch programs via a menu and may contain additional facilities including a start button, a taskbar, and a system tray.
Menu Panel
A menu panel a component of some window managers that provides the facility to launch programs using a menu. A menu panel is similar to a menubar, but appears as a floating panel, rather than a horizontal or vertical bar.
The menu panel may contain additional facilities including a start button, a task panel, and a system tray.
Mouse focus
The mouse focus model determines how the pointing device affects the input focus within the window manager. The focus model determine which component of the graphical user interface is currently selected to receive input as the pointer is moved around the screen.
Mouse warping
Mouse warping is a facility that centres the pointer on the current application as it is made active.
Multiple Desktops
A window manager may provide a multiple desktops facility. This enables switching between several root window desktops. This prevents clutter of the root window, because applications can run on different desktops.
Pager
Some window managers provide a pager tool that provides the facility to switch between multiple desktops. The pager may appear as an onscreen window or as a gadget in the taskbar or taskpanel.
Plugins
Some window managers have a modular construction that enables plug-in modules to provide features as required.
Rollup
A rollup facility enables windows to appear as just a titlebar on the desktop.
Root Menu
Some window managers provide a root menu, which appears when the root window or desktop background is touched.
Shortcuts
Some window managers provide a shortcut facility that lets users place icons on the root window that access specific programs or facilities.
Tabbed Windows
Some window managers provide a tabbed windows facility that groups applications together in common frames.
Task Switching
The window manager may provide various task switching facilities that let the user change the currently focused application, including:
  • Changing the mouse focus using a pointing device
  • Keyboard task switching facilities (for example, by pressing Alt-Tab)
  • Clicking on the task in a taskbar or taskpanel
Taskbar
Some window managers provide a taskbar that shows running applications. The taskbar may show all applications that are running including those that have been minimized, and may provide the facility to switch focus between them. The taskbar may be incorporated into a menubar on some window managers.
Task Panel
A task panel is similar to a taskbar, but appears as a floating panel, rather than a horizontal or vertical bar.
Start Button
A start button is a desktop widget that provides a menu of programs that can be launched. The start button is typically placed on a menubar at the bottom of the screen.
Notification Area
A Notification Area is used to display icons for system and program features that have no desktop window. It contains mainly icons to indicate status information and notifications such as arrival of a new mail message. Some systems may also show a clock in the Notification Area.
Title Bars
A titlebar is a window decoration component some window managers provide at the top of each window. The titlebar is typically used to display the name of the application, or the name of the open document, and may provide title bar buttons for minimizing, maximizing, closing or rolling up of application windows.
Title Bar Buttons
Title bar buttons are included in the titlebar of some window managers, and provide the facility to minimize, maximize, rollup or close application windows. Some window managers may display the titlebar buttons in the taskbar or task panel, rather than in a titlebar.
Virtual Desktop
A virtual desktop (also called a scrolling desktop) is a facility some window managers provided that lets the desktop be larger than the actual screen

Desktop environment

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

In computing, a desktop environment (DE) is an implementation of the desktop metaphor made of a bundle of programs running on top of a computer operating system, which share a common graphical user interface (GUI), sometimes described as a graphical shell. The desktop environment was seen mostly on personal computers until the rise of mobile computing. Desktop GUIs help the user to easily access and edit files, while they usually do not provide access to all of the features found in the underlying operating system. Instead, the traditional command-line interface (CLI) is still used when full control over the operating system is required.

A desktop environment typically consists of icons, windows, toolbars, folders, wallpapers and desktop widgets. A GUI might also provide drag and drop functionality and other features that make the desktop metaphor more complete. A desktop environment aims to be an intuitive way for the user to interact with the computer using concepts which are similar to those used when interacting with the physical world, such as buttons and windows.

While the term desktop environment originally described a style of user interfaces following the desktop metaphor, it has also come to describe the programs that realize the metaphor itself. This usage has been popularized by projects such as the Common Desktop Environment, K Desktop Environment, and GNOME.

Implementation

On a system that offers a desktop environment, a window manager in conjunction with applications written using a widget toolkit are generally responsible for most of what the user sees. The window manager supports the user interactions with the environment, while the toolkit provides developers a software library for applications with a unified look and behavior.

A windowing system of some sort generally interfaces directly with the underlying operating system and libraries. This provides support for graphical hardware, pointing devices, and keyboards. The window manager generally runs on top of this windowing system. While the windowing system may provide some window management functionality, this functionality is still considered to be part of the window manager, which simply happens to have been provided by the windowing system.

Applications that are created with a particular window manager in mind usually make use of a windowing toolkit, generally provided with the operating system or window manager. A windowing toolkit gives applications access to widgets that allow the user to interact graphically with the application in a consistent way. 

History and common use

The interim Dynabook desktop environment (1976; aka Smalltalk-76 running on Alto)
 
The first desktop environment was created by Xerox and was sold with the Xerox Alto in the 1970s. The Alto was generally considered by Xerox to be a personal office computer; it failed in the marketplace because of poor marketing and a very high price tag.[dubious ][2] With the Lisa, Apple introduced a desktop environment on an affordable personal computer, which also failed in the market.
The desktop metaphor was popularized on commercial personal computers by the original Macintosh from Apple in 1984, and was popularized further by Windows from Microsoft since the 1990s. As of 2014, the most popular desktop environments are descendants of these earlier environments, including the Aero environment used in Windows Vista and Windows 7, and the Aqua environment used in macOS. When compared with the X-based desktop environments available for Unix-like operating systems such as Linux and FreeBSD, the proprietary desktop environments included with Windows and macOS have relatively fixed layouts and static features, with highly integrated "seamless" designs that aim to provide mostly consistent customer experiences across installations.

Microsoft Windows dominates in marketshare among personal computers with a desktop environment. Computers using Unix-like operating systems such as macOS, Chrome OS, Linux, BSD or Solaris are much less common; however, as of 2015 there is a growing market for low-cost Linux PCs using the X Window System or Wayland with a broad choice of desktop environments. Among the more popular of these are Google's Chromebooks and Chromeboxes, Intel's NUC, the Raspberry Pi, etc.

On tablets and smartphones, the situation is the opposite, with Unix-like operating systems dominating the market, including the iOS (BSD-derived), Android, Tizen, Sailfish and Ubuntu (all Linux-derived). Microsoft's Windows phone, Windows RT and Windows 10 are used on a much smaller number of tablets and smartphones. However, the majority of Unix-like operating systems dominant on handheld devices do not use the X11 desktop environments used by other Unix-like operating systems, relying instead on interfaces based on other technologies. 

Desktop environments for the X Window System

A brief timeline of the most popular modern desktop environments for Unix-like operating systems (greyscale logos indicate when the project's development started, while colorized logos indicate the project's first release)
On systems running the X Window System (typically Unix-family systems such as Linux, the BSDs, and formal UNIX distributions), desktop environments are much more dynamic and customizable to meet user needs. In this context, a desktop environment typically consists of several separate components, including a window manager (such as Mutter or KWin), a file manager (such as Files or Dolphin), a set of graphical themes, together with toolkits (such as GTK+ and Qt) and libraries for managing the desktop. All these individual modules can be exchanged and independently configured to suit users, but most desktop environments provide a default configuration that works with minimal user setup. 

Some window managers‍—‌such as IceWM, Fluxbox, Openbox, ROX Desktop and Window Maker‍—‌contain relatively sparse desktop environment elements, such as an integrated spatial file manager, while others like evilwm and wmii do not provide such elements. Not all of the program code that is part of a desktop environment has effects which are directly visible to the user. Some of it may be low-level code. KDE, for example, provides so-called KIO slaves which give the user access to a wide range of virtual devices. These I/O slaves are not available outside the KDE environment.

In 1996 the KDE was announced, followed in 1997 by the announcement of GNOME. Xfce is a smaller project that was also founded in 1996, and focuses on speed and modularity, just like LXDE which was started in 2006. A comparison of X Window System desktop environments demonstrates the differences between environments. GNOME and KDE were usually seen as dominant solutions, and these are still often installed by default on Linux systems. Each of them offers:
  • To programmers, a set of standard APIs, a programming environment, and human interface guidelines.
  • To translators, a collaboration infrastructure. KDE and GNOME are available in many languages.
  • To artists, a workspace to share their talents.
  • To ergonomics specialists, the chance to help simplify the working environment.
  • To developers of third-party applications, a reference environment for integration. OpenOffice.org is one such application.
  • To users, a complete desktop environment and a suite of essential applications. These include a file manager, web browser, multimedia player, email client, address book, PDF reader, photo manager, and system preferences application.
In the early 2000s, KDE reached maturity. The Appeal and ToPaZ projects focused on bringing new advances to the next major releases of both KDE and GNOME respectively. Although striving for broadly similar goals, GNOME and KDE do differ in their approach to user ergonomics. KDE encourages applications to integrate and interoperate, is highly customizable, and contains many complex features, all whilst trying to establish sensible defaults. GNOME on the other hand is more prescriptive, and focuses on the finer details of essential tasks and overall simplification. Accordingly, each one attracts a different user and developer community. Technically, there are numerous technologies common to all Unix-like desktop environments, most obviously the X Window System. Accordingly, the freedesktop.org project was established as an informal collaboration zone with the goal being to reduce duplication of effort. 

As GNOME and KDE focus on high-performance computers, users of less powerful or older computers often prefer alternative desktop environments specifically created for low-performance systems. Most commonly used lightweight desktop environments include LXDE and Xfce; they both use GTK+, which is the same underlying toolkit GNOME uses. The MATE desktop environment, a fork of GNOME 2, is comparable to Xfce in its use of RAM and processor cycles, but is often considered more as an alternative to other lightweight desktop environments.

For a while, GNOME and KDE enjoyed the status of the most popular Linux desktop environments; later, other desktop environments grew in popularity. In April 2011, GNOME introduced a new interface concept with its version 3, while a popular Linux distribution Ubuntu introduced its own new desktop environment, Unity. Some users preferred to keep the traditional interface concept of GNOME 2, resulting in the creation of MATE as a GNOME 2 fork.

Examples of desktop environments

The most common desktop environment on personal computers is Microsoft Windows' built-in interface. It was titled Luna in Windows XP, Aero in Windows Vista and Windows 7, Metro in Windows 8 and 8.1, and Fluent in Windows 10. Also common is Aqua, included with Apple's macOS.

Mainstream desktop environments for Unix-like operating systems use the X Window System, and include KDE, GNOME, Xfce, and LXDE, any of which may be selected by users and are not tied exclusively to the operating system in use.

A number of other desktop environments also exist, including (but not limited to) CDE, EDE, GEM, IRIX Interactive Desktop, Sun's Java Desktop System, Jesktop, Mezzo, Project Looking Glass, ROX Desktop, UDE, Xito, XFast. Moreover, there exists FVWM-Crystal, which consists of a powerful configuration for the FVWM window manager, a theme and further adds, altogether forming a "construction kit" for building up a desktop environment. 

X window managers that are meant to be usable stand-alone — without another desktop environment — also include elements reminiscent of those found in typical desktop environments, most prominently Enlightenment. Other examples include OpenBox, Fluxbox, WindowLab, Fvwm, as well as Window Maker and AfterStep, which both feature the NeXTSTEP GUI look and feel. However newer versions of some operating systems make self configure.

The Amiga approach to desktop environment was noteworthy: the original Workbench desktop environment in AmigaOS evolved through time to originate an entire family of descendants and alternative desktop solutions. Some of those descendants are the Scalos, the Ambient desktop of MorphOS, and the Wanderer desktop of the AROS open source OS. WindowLab also contains features reminiscent of the Amiga UI. Third-party Directory Opus software, which was originally just a navigational file manager program, evolved to become a complete Amiga desktop replacement called Directory Opus Magellan.

There is the Workplace Shell that runs on IBM OS/2 or eComStation.

The BumpTop project is an experimental desktop environment. Its main objective is to replace the 2D paradigm with a "real-world" 3D implementation, where documents can be freely manipulated across a virtual table.

Macintosh operating systems

From Wikipedia, the free encyclopedia
https://en.wikipedia.org/wiki/Macintosh_operating_systems
 
The original Macintosh System Software and Finder, released in 1984
 
The family of Macintosh operating systems developed by Apple Inc. includes the graphical user interface-based operating systems it has designed for use with its Macintosh series of personal computers since 1984, as well as the related system software it once created for compatible third-party systems.

In 1984, Apple debuted the operating system that is now known as the "Classic" Mac OS with its release of the original Macintosh System Software. The system, rebranded "Mac OS" in 1996, was preinstalled on every Macintosh until 2002 and offered on Macintosh clones for a short time in the 1990s. Noted for its ease of use, it was also criticized for its lack of modern technologies compared to its competitors.

The current Mac operating system is macOS, originally named "Mac OS X" until 2012 and then "OS X" until 2016. Developed between 1997 and 2001 after Apple's purchase of NeXT, Mac OS X brought an entirely new architecture based on NeXTSTEP, a Unix system, that eliminated many of the technical challenges that the classic Mac OS faced. The current macOS is preinstalled with every Mac and is updated annually. It is the basis of Apple's current system software for its other devices – iOS, iPadOS, watchOS, and tvOS.

Prior to the introduction of Mac OS X, Apple experimented with several other concepts, releasing different products designed to bring the Macintosh interface or applications to Unix-like systems or vice versa, A/UX, MAE, and MkLinux. Apple's effort to expand upon and develop a replacement for its classic Mac OS in the 1990s led to a few cancelled projects, code named Star Trek, Taligent, and Copland

Although they have different architectures, the Macintosh operating systems share a common set of GUI principles, including a menu bar across the top of the screen; the Finder shell, featuring a desktop metaphor that represents files and applications using icons and relates concepts like directories and file deletion to real-world objects like folders and a trash can; and overlapping windows for multitasking

Classic Mac OS

Mac OS 9, released in 1999
 
The "classic" Mac OS is the original Macintosh operating system that was introduced in 1984 alongside the first Macintosh and remained in primary use on Macs through 2001.

Apple released the original Macintosh on January 24, 1984; its early system software was partially based on the Lisa OS and the Xerox PARC Alto computer, which former Apple CEO Steve Jobs previewed. It was originally named "System Software", or simply "System"; Apple rebranded it as "Mac OS" in 1996 due in part to its Macintosh clone program that ended a year later.

Classic Mac OS is characterized by its monolithic design. Initial versions of the System Software run one application at a time. System 5 introduced cooperative multitasking. System 7 supports 32-bit memory addressing and virtual memory, allowing larger programs. Later updates to the System 7 enable the transition to the PowerPC architecture. The system was considered user-friendly, but its architectural limitations were critiqued, such as limited memory management, lack of protected memory and access controls, and susceptibility to conflicts among extensions.

Releases

The text-only logo for Classic Mac OS starting with Mac OS 7.6, released in 1997
 
Nine major versions of the classic Mac OS were released. The name "Classic" that now signifies the system as a whole is a reference to a compatibility layer that helped ease the transition to Mac OS X.

Mac OS X / OS X / macOS

macOS Mojave, released in 2018
 
macOS (originally named "Mac OS X" until 2012 and then "OS X" until 2016) is the current Mac operating system that officially succeeded the classic Mac OS in 2001. 

Although the system was originally marketed as simply "version 10" of Mac OS, it has a history that is largely independent of the classic Mac OS. It is a Unix-based operating system built on NeXTSTEP and other technology developed at NeXT from the late 1980s until early 1997, when Apple purchased the company and its CEO Steve Jobs returned to Apple. Precursors to the original release of Mac OS X include OpenStep, Apple's Rhapsody project, and the Mac OS X Public Beta.

macOS makes use of the BSD codebase and the XNU kernel, and its core set of components is based upon Apple's open source Darwin operating system

macOS is the basis for some of Apple's other operating systems, including iPhone OS/iOS, iPadOS, watchOS, and tvOS

Releases

The "X" logo for Mac OS X versions 10.0 "Cheetah" and 10.1 "Puma", released in 2001

Desktop

The first desktop version of the system was released on March 24, 2001, supporting the Aqua user interface. Since then, several more versions adding newer features and technologies have been released. Since 2011, new releases have been offered on an annual basis.
  • Mac OS X 10.0 – code name "Cheetah", released to end users on Saturday, March 24, 2001
  • Mac OS X 10.1 – code name "Puma", released to end users on Tuesday, September 25, 2001
  • Mac OS X 10.2 – also marketed as "Jaguar", released to end users on Friday, August 23, 2002
  • Mac OS X Panther – version 10.3, released to end users on Friday, October 24, 2003
  • Mac OS X Tiger – version 10.4, released to end users on Friday, April 29, 2005
  • Mac OS X Leopard – version 10.5, released to end users on Friday, October 26, 2007
  • Mac OS X Snow Leopard – version 10.6, publicly unveiled on Monday, June 8, 2009
  • Mac OS X Lion – version 10.7, released to end users on Wednesday, July 20, 2011
  • OS X Mountain Lion – version 10.8, released to end users on Wednesday, July 25, 2012
  • OS X Mavericks – version 10.9, released to end users on Tuesday, October 22, 2013
  • OS X Yosemite – version 10.10, released to end users on Thursday, October 16, 2014
  • OS X El Capitan – version 10.11, released to end users on Wednesday, September 30, 2015
  • macOS Sierra – version 10.12, released to end users on Tuesday, September 20, 2016
  • macOS High Sierra – version 10.13, released to end users on Monday, September 25, 2017
  • macOS Mojave – version 10.14, released to end users on Monday, September 24, 2018
  • macOS Catalina – version 10.15, released to end users on Monday, October 7, 2019

Server

An early server computing version of the system was released in 1999 as a technology preview. It was followed by several more official server-based releases. Server functionality has instead been offered as an add-on for the desktop system since 2011.

Other projects


Shipped


A/ROSE

The Apple Real-time Operating System Environment (A/ROSE) was a small embedded operating system which ran on the Macintosh Coprocessor Platform, an expansion card for the Macintosh. The idea was to offer a single "overdesigned" hardware platform on which third-party vendors could build practically any product, reducing the otherwise heavy workload of developing a NuBus-based expansion card. The first version of the system was ready for use in February 1988.

A/UX

In 1988, Apple released its first UNIX-based OS, A/UX, which was a UNIX operating system with the Mac OS look and feel. It was not very competitive for its time, due in part to the crowded UNIX market and Macintosh hardware lacking high-end design features present on workstation-class computers. A/UX had most of its success in sales to the U.S. government, where POSIX compliance was a requirement that Mac OS could not meet.

MAE

The Macintosh Application Environment (MAE) was a software package introduced by Apple in 1994 that allowed users of certain Unix-based computer workstations to run Apple Macintosh application software. MAE used the X Window System to emulate a Macintosh Finder-style graphical user interface. The last version, MAE 3.0, was compatible with System 7.5.3. MAE was available for Sun Microsystems SPARCstation and Hewlett-Packard systems. It was discontinued on May 14, 1998.

MkLinux

Announced at the 1996 Worldwide Developers Conference (WWDC), MkLinux is an open source operating system that was started by the OSF Research Institute and Apple in February 1996 to port Linux to the PowerPC platform, and thus Macintosh computers. In mid 1998, the community-led MkLinux Developers Association took over development of the operating system. MkLinux is short for "Microkernel Linux," which refers to the project's adaptation of the Linux kernel to run as a server hosted atop the Mach microkernel. MkLinux is based on version 3.0 of Mach.

Cancelled


Star Trek

Star Trek (as in "to boldly go where no Mac has gone before") was a relatively unknown secret prototype beginning in 1992, whose goal was to create a version of the classic Mac OS that would run on Intel-compatible x86 personal computers. In partnership with Apple and with support from Intel, the project was instigated by Novell, which was looking to integrate its DR-DOS with the Mac OS GUI as a mutual response to the monopoly of Microsoft's Windows 3.0 and MS-DOS. A team consisting of four from Apple and four from Novell was able to get the Macintosh Finder and some basic applications such as QuickTime, running smoothly on the x86 architecture. The project was canceled a year later in early 1993, but some of the code was later reused when porting the Mac OS to PowerPC.

Taligent

Taligent (a portmanteau of "talent" and "intelligent") was the name of an object-oriented operating system and the company dedicated to producing it. Started as a project within Apple to provide a replacement for the classic Mac OS, it was later spun off into a joint venture with IBM as part of the AIM alliance, with the purpose of building a competing platform to Microsoft Cairo and NeXTSTEP. The development process never worked, and Taligent is often cited as an example of a project death march. Apple pulled out of the project in 1995 before the code had been delivered.

Copland

Copland was a project at Apple to create an updated version of the classic Mac OS. It was to have introduced protected memory, preemptive multitasking and a number of new underlying operating system features, yet still be compatible with existing Mac software. As originally planned, a follow-up release known as "Gershwin" would add multithreading and other advanced features. New features were added more rapidly than they could be completed, and the completion date slipped into the future with no sign of a release. In 1996, Apple decided to cancel the project outright and find a suitable third-party system to replace it. Copland development ended in August 1996, and in December 1996, Apple announced that it was buying NeXT for its NeXTSTEP operating system.

Timeline

Timeline of Macintosh operating systems
Apple–Intel architecturePower Mac G5Power Mac G4iMac G3Power MacintoshMacintosh QuadraMacintosh PortableMacintosh SE/30Macintosh IIMacintosh PlusMacintosh 128KA/UXA/UXA/UXmacOS MojavemacOS High SierramacOS SierraOS X El CapitanOS X YosemiteOS X MavericksOS X Mountain LionMac OS X LionMac OS X Snow LeopardMac OS X LeopardMac OS X TigerMac OS X PantherMac OS X 10.2Mac OS X 10.1Mac OS X 10.0Mac OS X Public BetaMac OS X Server 1.0MacWorks XLMacWorks XLSun RemarketingMacWorks XLMac OS 9Mac OS 9Mac OS 9Mac OS 8Mac OS 8Mac OS 8Mac OS 8System 7System 7System 7System 7System 6Classic Mac OSClassic Mac OSClassic Mac OSClassic Mac OSSystem 1Finder (software)Finder (software)Finder (software)Finder (software)Finder (software)Finder (software)Finder (software)Finder (software)

Related systems

Before the arrival of the Macintosh in 1984, Apple's history of operating systems began with its Apple II series computers in 1977, which ran Apple DOS, ProDOS, and later GS/OS; the Apple III in 1980, which ran Apple SOS; and the Apple Lisa in 1983, which ran Lisa OS and later MacWorks XL, a Macintosh emulator. Apple also developed the Newton OS for its Newton personal digital assistant from 1993 to 1997.

In recent years, Apple has also launched several new operating systems based on the core of macOS, including iOS in 2007 for its iPhone, iPad, and iPod Touch mobile devices and in 2017 for its HomePod smart speakers; watchOS in 2015 for the Apple Watch; tvOS in 2015 for the Apple TV set-top box.

Operator (computer programming)

From Wikipedia, the free encyclopedia https://en.wikipedia.org/wiki/Operator_(computer_programmin...