Solaris (operating system)
Solaris is a Unix operating system originally developed by Sun Microsystems. It superseded their earlier SunOS in 1993, Oracle Solaris, so named as of 2010, has been owned by Oracle Corporation since the Sun acquisition by Oracle in January 2010. Solaris is known for its scalability, especially on SPARC systems, Solaris supports SPARC-based and x86-based workstations and servers from Oracle and other vendors, with efforts underway to port to additional platforms. Solaris is registered as compliant with the Single Unix Specification, Solaris was developed as proprietary software. In June 2005, Sun Microsystems released most of the codebase under the CDDL license, with OpenSolaris, Sun wanted to build a developer and user community around the software. After the acquisition of Sun Microsystems in January 2010, Oracle decided to discontinue the OpenSolaris distribution, in August 2010, Oracle discontinued providing public updates to the source code of the Solaris kernel, effectively turning Solaris 11 back into a closed source proprietary operating system.
Following that, in 2011 the Solaris 11 kernel source code leaked to BitTorrent, through the Oracle Technology Network, industry partners can still gain access to the in-development Solaris source code. Source code for the source components of Solaris 11 is available for download from Oracle. In 1987, AT&T Corporation and Sun announced that they were collaborating on a project to merge the most popular Unix variants on the market at that time, BSD, System V and this became Unix System V Release 4. On September 4,1991, Sun announced that it would replace its existing BSD-derived Unix, SunOS4 and this was identified internally as SunOS5, but a new marketing name was introduced at the same time, Solaris 2. The justification for this new overbrand was that it encompassed not only SunOS, but the OpenWindows graphical user interface and Open Network Computing functionality. Although SunOS4.1. x micro releases were retroactively named Solaris 1 by Sun, for releases based on SunOS5, the SunOS minor version is included in the Solaris release number.
For example, Solaris 2.4 incorporates SunOS5.4. After Solaris 2.6, the 2. was dropped from the name, so Solaris 7 incorporates SunOS5.7. Although SunSoft stated in its initial Solaris 2 press release their intent to support both SPARC and x86 systems, the first two Solaris 2 releases,2.0 and 2.1, were SPARC-only. An x86 version of Solaris 2.1 was released in June 1993, about 6 months after the SPARC version, as a desktop and it included the Wabi emulator to support Windows applications. At the time, Sun offered the Interactive Unix system that it had acquired from Interactive Systems Corporation, in 1994, Sun released Solaris 2.4, supporting both SPARC and x86 systems from a unified source code base. Solaris uses a code base for the platforms it supports, SPARC
AIX is a series of proprietary Unix operating systems developed and sold by IBM for several of its computer platforms. AIX is based on UNIX System V with 4. 3BSD-compatible extensions and it is one of five commercial operating systems that have versions certified to The Open Groups UNIX03 standard. The AIX family of operating systems debuted in 1986, became the operating system for the RS/6000 series on its launch in 1990. It is currently supported on IBM Power Systems alongside IBM i, Unix started life at AT&Ts Bell Labs research center in the early 1970s, running on DEC minicomputers. By 1976, the system was in use at various academic institutions, including Princeton. This port would grow out to become UTS, a mainframe Unix offering by IBMs competitor Amdahl Corporation, IBMs own involvement in Unix can be dated to 1979, when it assisted Bell Labs in doing its own Unix port to the 370. In the process, IBM made modifications to the TSS/370 hypervisor to better support Unix and it took until 1985 for IBM to offer its own Unix on the S/370 platform, IX/370, which was developed by Interactive Systems Corporation and intended by IBM to compete with Amdahl UTS.
AIX Version 1, introduced in 1986 for the IBM6150 RT workstation, was based on UNIX System V Releases 1 and 2, in developing AIX, IBM and Interactive Systems Corporation incorporated source code from 4.2 and 4.3 BSD UNIX. Among other variants, IBM produced AIX Version 3, based on System V Release 3, since 1990, AIX has served as the primary operating system for the RS/6000 series. AIX Version 4, introduced in 1994, added symmetric multiprocessing with the introduction of the first RS/6000 SMP servers and continued to evolve through the 1990s, culminating with AIX4.3.3 in 1999. Version 4.1, in a modified form, was the standard operating system for the Apple Network Server systems sold by Apple Computer to complement the Macintosh line. IBM maintains that their license was irrevocable, and continued to sell, AIX was a component of the 2003 SCO v. IBM lawsuit, in which the SCO Group filed a lawsuit against IBM, alleging IBM contributed SCOs intellectual property to the Linux codebase. The SCO Group, who argued they were the owners of the copyrights covering the Unix operating system.
In March 2010, a jury returned a finding that Novell, not the SCO Group. AIX6 was announced in May 2007, and it ran as an open beta from June 2007 until the availability of AIX6.1 on November 9,2007. Major new features in AIX6.1 included full role-based access control, workload partitions, enhanced security, AIX7.1 was announced in April 2010, and an open beta ran until general availability of AIX7.1 in September 2010. Several new features, including better scalability, enhanced clustering and management capabilities were added, AIX7.1 includes a new built-in clustering capability called Cluster Aware AIX. AIX is able to organize multiple LPARs through the communications channel to neighboring CPUs
MS-DOS is a discontinued operating system for x86-based personal computers mostly developed by Microsoft. MS-DOS resulted from a request in 1981 by IBM for a system to use in its IBM PC range of personal computers. Microsoft quickly bought the rights to 86-DOS from Seattle Computer Products, IBM licensed and released it in August 1981 as PC DOS1.0 for use in their PCs. During its life, several competing products were released for the x86 platform and it was the underlying basic operating system on which early versions of Windows ran as a GUI. It is a operating system, and consumes negligible installation space. MS-DOS was a form of 86-DOS – owned by Seattle Computer Products. This first version was shipped in August 1980, which needed an operating system for the IBM Personal Computer hired Tim Paterson in May 1981 and bought 86-DOS1.10 for $75,000 in July of the same year. Microsoft kept the number, but renamed it MS-DOS. They licensed MS-DOS1. 10/1.14 to IBM, within a year Microsoft licensed MS-DOS to over 70 other companies.
It was designed to be an OS that could run on any 8086-family computer, there were many different versions of MS-DOS for different hardware, and there is a major distinction between an IBM-compatible machine and an MS-DOS machine. This design would have worked well for compatibility, if application programs had only used MS-DOS services to perform device I/O, Microsoft omitted multi-user support from MS-DOS because Microsofts Unix-based operating system, was fully multi-user. After the breakup of the Bell System, however, AT&T Computer Systems started selling UNIX System V, believing that it could not compete with AT&T in the Unix market, Microsoft abandoned Xenix, and in 1987 transferred ownership of Xenix to the Santa Cruz Operation. On 25 March 2014, Microsoft made the code to SCP MS-DOS1.25, as an April Fools joke in 2015, Microsoft Mobile launched a Windows Phone application called MS-DOS Mobile which was presented as a new mobile operating system and worked similar to MS-DOS. Version 3.1 – Support for Microsoft Networks Version 3.2 – First version to support 3.5 inch,720 kB floppy drives and diskettes.
Version 3.21 Version 3.22 – Version 3.25 Version 3.3 – First version to support 3.5 inch,1.44 MB floppy drives and diskettes, Version 3. 3a Version 3.31 – supports FAT16B and larger drives. MS-DOS4.0 and MS-DOS4.1 – A separate branch of development with additional multitasking features and it is unrelated to any versions, including versions 4.00 and 4.01 listed below MS-DOS4. x – includes a graphical/mouse interface. It had many bugs and compatibility issues. Version 4.00 – First version to support a hard disk partition that is greater than 32 MiB. Version 4.01 – Microsoft rewritten Version 4.00 released under MS-DOS label, First version to introduce volume serial number when formatting hard disks and floppy disks
Exokernel is an operating system kernel developed by the MIT Parallel and Distributed Operating Systems group, and a class of similar operating systems. Operating systems generally present hardware resources to applications through high-level abstractions such as file systems, the idea behind exokernels is to force as few abstractions as possible on application developers, enabling them to make as many decisions as possible about hardware abstractions. Implemented applications are called library operating systems, they may request specific memory addresses, disk blocks, the kernel only ensures that the requested resource is free, and the application is allowed to access it. This low-level hardware access allows the programmer to implement custom abstractions and it allows programmers to choose what level of abstraction they want, high, or low. Traditionally kernel designers have sought to make individual hardware resources invisible to programs by requiring the programs to interact with the hardware via some abstraction model.
These models include file systems for storage, virtual address spaces for memory, schedulers for task management. These abstractions of the make it easier to write programs in general. One option is to remove the kernel completely and program directly to the hardware, the program can link to a support library that implements the abstractions it needs. MIT developed two exokernel-based operating systems, using two kernels, Aegis, a proof of concept with limited support for storage, and XOK, which applied the exokernel concept more thoroughly. The MIT exokernel manages hardware resources as follows, Processor The kernel represents the processor resources as a timeline from which programs can allocate intervals of time, a program can yield the rest of its time slice to another designated program. The kernel notifies programs of processor events, such as interrupts, hardware exceptions, if a program takes a long time to handle an event, the kernel will penalize it on subsequent time slice allocations, in extreme cases the kernel can abort the program.
Memory The kernel allocates physical memory pages to programs and controls the translation lookaside buffer, a program can share a page with another program by sending it a capability to access that page. The kernel ensures that programs access only pages for which they have a capability, disk storage The kernel identifies disk blocks to the application program by their physical block address, allowing the application to optimize data placement. When the program initializes its use of the disk, it provides the kernel with a function that the kernel can use to determine which blocks the program controls. The kernel uses this callback to verify that when it allocates a new block, networking The kernel implements a programmable packet filter, which executes programs in a byte code language designed for easy security-checking by the kernel. The available library operating systems for Exokernel include the custom ExOS system, in addition to these, the exokernel team created the Cheetah web server, which uses the kernel directly.
The exokernel concept has been around since at least 1994, a concept operating exokernel system is Nemesis, written by University of Cambridge, University of Glasgow, Citrix Systems, and the Swedish Institute of Computer Science. MIT has built several exokernel based systems, including ExOS, in modern computing the MINIX3 Kernel implements some of the ideas of exokernel, but with the constraint that programs should be subject to reincarnation for the goal of reliability
Among these is Apples macOS, which is the Unix version with the largest installed base as of 2014. Many Unix-like operating systems have arisen over the years, of which Linux is the most popular, Unix was originally meant to be a convenient platform for programmers developing software to be run on it and on other systems, rather than for non-programmer users. The system grew larger as the system started spreading in academic circles, as users added their own tools to the system. Unix was designed to be portable, multi-tasking and multi-user in a time-sharing configuration and these concepts are collectively known as the Unix philosophy. By the early 1980s users began seeing Unix as a universal operating system. Under Unix, the system consists of many utilities along with the master control program. To mediate such access, the kernel has special rights, reflected in the division between user space and kernel space, the microkernel concept was introduced in an effort to reverse the trend towards larger kernels and return to a system in which most tasks were completed by smaller utilities.
In an era when a standard computer consisted of a disk for storage and a data terminal for input and output. However, modern systems include networking and other new devices, as graphical user interfaces developed, the file model proved inadequate to the task of handling asynchronous events such as those generated by a mouse. In the 1980s, non-blocking I/O and the set of inter-process communication mechanisms were augmented with Unix domain sockets, shared memory, message queues, and semaphores. In microkernel implementations, functions such as network protocols could be moved out of the kernel, Multics introduced many innovations, but had many problems. Frustrated by the size and complexity of Multics but not by the aims and their last researchers to leave Multics, Ken Thompson, Dennis Ritchie, M. D. McIlroy, and J. F. Ossanna, decided to redo the work on a much smaller scale. The name Unics, a pun on Multics, was suggested for the project in 1970. Peter H. Salus credits Peter Neumann with the pun, while Brian Kernighan claims the coining for himself, in 1972, Unix was rewritten in the C programming language.
Bell Labs produced several versions of Unix that are referred to as Research Unix. In 1975, the first source license for UNIX was sold to faculty at the University of Illinois Department of Computer Science, UIUC graduate student Greg Chesson was instrumental in negotiating the terms of this license. During the late 1970s and early 1980s, the influence of Unix in academic circles led to adoption of Unix by commercial startups, including Sequent, HP-UX, Solaris, AIX. In the late 1980s, AT&T Unix System Laboratories and Sun Microsystems developed System V Release 4, in the 1990s, Unix-like systems grew in popularity as Linux and BSD distributions were developed through collaboration by a worldwide network of programmers
Berkeley Software Distribution
Berkeley Software Distribution is a Unix operating system derivative developed and distributed by the Computer Systems Research Group of the University of California, from 1977 to 1995. Today the term BSD is often used non-specifically to refer to any of the BSD descendants which together form a branch of the family of Unix-like operating systems, operating systems derived from the original BSD code remain actively developed and widely used. Historically, BSD has been considered a branch of Unix, Berkeley Unix, because it shared the initial codebase, in the 1980s, BSD was widely adopted by vendors of workstation-class systems in the form of proprietary Unix variants such as DEC ULTRIX and Sun Microsystems SunOS. This can be attributed to the ease with which it could be licensed, FreeBSD, OpenBSD, NetBSD, and PC-BSD. The earliest distributions of Unix from Bell Labs in the 1970s included the source code to the system, allowing researchers at universities to modify. A larger PDP-11/70 was installed at Berkeley the following year, using money from the Ingres database project, in 1975, Ken Thompson took a sabbatical from Bell Labs and came to Berkeley as a visiting professor.
He helped to install Version 6 Unix and started working on a Pascal implementation for the system, graduate students Chuck Haley and Bill Joy improved Thompsons Pascal and implemented an improved text editor, ex. Other universities became interested in the software at Berkeley, and so in 1977 Joy started compiling the first Berkeley Software Distribution, 1BSD was an add-on to Version 6 Unix rather than a complete operating system in its own right. Some thirty copies were sent out, some 75 copies of 2BSD were sent out by Bill Joy. 2. 9BSD from 1983 included code from 4. 1cBSD, the most recent release,2. 11BSD, was first issued in 1992. As of 2008, maintenance updates from volunteers are still continuing, a VAX computer was installed at Berkeley in 1978, but the port of Unix to the VAX architecture, UNIX/32V, did not take advantage of the VAXs virtual memory capabilities. 3BSD was alternatively called Virtual VAX/UNIX or VMUNIX, and BSD kernel images were normally called /vmunix until 4. 4BSD, 4BSD offered a number of enhancements over 3BSD, notably job control in the previously released csh, reliable signals, and the Curses programming library.
In a 1985 review of BSD releases, John Quarterman et al, many installations inside the Bell System ran 4. 1BSD. 4. 1BSD was a response to criticisms of BSDs performance relative to the dominant VAX operating system, the 4. 1BSD kernel was systematically tuned up by Bill Joy until it could perform as well as VMS on several benchmarks. Back at Bell Labs,4. 1cBSD became the basis of the 8th Edition of Research Unix, to guide the design of 4. The committee met from April 1981 to June 1983, apart from the Fast File System, several features from outside contributors were accepted, including disk quotas and job control. Sun Microsystems provided testing on its Motorola 68000 machines prior to release, the official 4. 2BSD release came in August 1983. On a lighter note, it marked the debut of BSDs daemon mascot in a drawing by John Lasseter that appeared on the cover of the printed manuals distributed by USENIX
OpenVMS is a computer operating system for use in general-purpose computing. It is the successor to the VMS Operating System, that was produced by Digital Equipment Corporation, in the 1990s, it was used for the successor series of DEC Alpha systems. OpenVMS runs on the HP Itanium-based families of computers, as of 2015, a port to the X86-64 architecture is underway. The name VMS is derived from virtual memory system, according to one of its architectural features. OpenVMS is a operating system, but source code listings are available for purchase. OpenVMS is a multi-user, multiprocessing virtual memory-based operating system designed for use in time sharing, batch processing, when process priorities are suitably adjusted, it may approach real-time operating system characteristics. The system offers high availability through clustering and the ability to distribute the system over multiple physical machines and this allows the system to be tolerant against disasters that may disable individual data-processing facilities.
OpenVMS contains a user interface, a feature that was not available on the original VAX-11/VMS system. Versions of VMS running on DEC Alpha workstations in the 1990s supported OpenGL, customers using OpenVMS include banks and financial services and healthcare, network information services, and large-scale industrial manufacturers of various products. As of mid-2014, Hewlett Packard licensed the development of OpenVMS exclusively to VMS Software Inc, VMS Software will be responsible for developing OpenVMS, supporting existing hardware and providing roadmap to clients. The company has a team of developers that originally developed the software during DECs ownership. In April 1975, Digital Equipment Corporation embarked on a project, code named Star. A companion software project, code named Starlet, was started in June 1975 to develop a new operating system, based on RSX-11M. These two projects were integrated from the beginning. Gordon Bell was the VP lead on the VAX hardware and its architecture, the Star and Starlet projects culminated in the VAX 11/780 computer and the VAX-11/VMS operating system.
The Starlet name survived in VMS as a name of several of the system libraries, including STARLET. OLB. Over the years the name of the product has changed, in 1980 it was renamed, with version 2.0 release, to VAX/VMS. g. The smallest MicroVAX2000 had a 40MB RD32 hard disk and a maximum of 6MB of RAM, microVMS kits were released for VAX/VMS4.4 to 4.7 on TK50 tapes and RX50 floppy disks, but discontinued with VAX/VMS5.0
UNIX System V
UNIX System V is one of the first commercial versions of the Unix operating system. It was originally developed by AT&T and first released in 1983, four major versions of System V were released, numbered 1,2,3, and 4. It was the source of common commercial Unix features. System V is sometimes abbreviated to SysV, as of 2012, the Unix market is divided between three System V variants, IBMs AIX, Hewlett-Packards HP-UX and Oracles Solaris. System V was the successor to 1982s UNIX System III, while AT&T sold their own hardware that ran System V, most customers instead ran a version from a reseller, based on AT&Ts reference implementation. A standards document called the System V Interface Definition outlined the default features, in the 1980s and early-1990s, System V was considered one of the two major versions of UNIX, the other being the Berkeley Software Distribution. Historically, BSD was commonly called BSD Unix or Berkeley Unix, the dispute had several levels, some technical and some cultural.
The divide was roughly between longhairs and shorthairs and technical people tended to line up with Berkeley and BSD, more business-oriented types with AT&T and System V. While HP, IBM and others chose System V as the basis for their Unix offerings, other such as Sun Microsystems. Throughout its development, System V was infused with features from BSD, since the early 1990s, due to standardization efforts such as POSIX and the commercial success of Linux, the division between System V and BSD has become less important. System V, known inside Bell Labs as Unix 5.0, there was never an external release of Unix 4.0, which would have been System IV. This first release of System V was developed by AT&Ts UNIX Support Group, System V included features such as the vi editor and curses from 4.1 BSD, developed at the University of California, Berkeley, it improved performance by adding buffer and inode caches. It added support for communication using messages, semaphores. SVR1 ran on DEC PDP-11 and VAX minicomputers, System V Release 2 was released in April,1984.
It added shell functions and the SVID, new kernel features included record and file locking, demand paging, and copy on write. The concept of the base was formalized, and the DEC VAX-11/780 was chosen for this release. The porting base is the original version of a release. Educational source licenses for SVR2 were offered by AT&T for US$800 for the first CPU, a commercial source license was offered for $43,000, with three months of support, and a $16,000 price per additional CPU
NetBSD is a free and open source Unix-like operating system that descends from Berkeley Software Distribution, a Research Unix derivative developed at the University of California, Berkeley. It was the second open-source BSD descendant formally released after it forked from the 386BSD branch of the BSD source-code repository. It continues to be developed and is available for many platforms, including large-scale server systems, desktop systems, and handheld devices. The NetBSD project focuses on code clarity, careful design, netBSDs source code is openly available and permissively licensed. The NetBSD project began as a result of frustration within the 386BSD developer community with the pace and they aimed to produce a unified, multi-platform, production-quality, BSD-based operating system. The name NetBSD was suggested by de Raadt, based on the importance and growth of such as the Internet at that time. The NetBSD source code repository was established on 21 March 1993 and this was derived from 386BSD0.1 plus the version 0.2.2 unofficial patchkit, with several programs from the Net/2 release missing from 386BSD re-integrated, and various other improvements.
The first multi-platform release, NetBSD1.0, was made in October 1994, in 1994, for disputed reasons, one of the founders, Theo de Raadt, was removed from the project. He founded a new project, OpenBSD, from a version of NetBSD1.0 near the end of 1995. In 1998, NetBSD1.3 introduced the pkgsrc packages collection, until 2004, NetBSD1. x releases were made at roughly annual intervals, with minor patch releases in between. The previous minor releases are now divided into two categories, x. y stable maintenance releases and x. y. z releases containing only security, as the projects motto suggests, NetBSD has been ported to a large number of 32- and 64-bit architectures. These range from VAX minicomputers to Pocket PC PDAs, as of 2009, NetBSD supports 57 hardware platforms. The kernel and userland for these platforms are all built from a central unified source-code tree managed by CVS, unlike other kernels such as μClinux, the NetBSD kernel requires the presence of an MMU in any given target architecture.
NetBSDs portability is aided by the use of hardware abstraction layer interfaces for low-level hardware access such as bus input/output or DMA, using this portability layer, device drivers can be split into machine-independent and machine-dependent components. This makes a single driver easily usable on several platforms by hiding hardware access details, and reduces the work to port it to a new system. This permits a device driver for a PCI card to work without modifications, whether its in a PCI slot on an IA-32, PowerPC, SPARC. Also, a driver for a specific device can operate via several different buses, like ISA, PCI. In comparison, Linux device driver code often must be reworked for each new architecture, as a consequence, in porting efforts by NetBSD and Linux developers, NetBSD has taken much less time to port to new hardware
The Linux kernel is a monolithic Unix-like computer operating system kernel. The Android operating system for computers and smartwatches is based atop the Linux kernel. While the adoption on desktop computers is low, Linux-based operating systems dominate nearly every segment of computing. As of November 2016, all but two of the worlds 500 most powerful supercomputers run Linux, Linux rapidly attracted developers and users who adopted it as the kernel for other free software projects, notably the GNU Operating System. The Linux kernel has received contributions from nearly 12,000 programmers from more than 1,200 companies, the Linux kernel API, the application programming interface through which user programs interact with the kernel, is meant to be very stable and to not break userspace programs. As part of the functionality, device drivers control the hardware. However, the interface between the kernel and loadable kernel modules, unlike in many other kernels and operating systems, is not meant to be stable by design.
The Linux kernel, developed by contributors worldwide, is a prominent example of free, day-to-day development discussions take place on the Linux kernel mailing list. The Linux kernel is released under the GNU General Public License version 2, in April 1991, Linus Torvalds, at the time a 21-year-old computer science student at the University of Helsinki, started working on some simple ideas for an operating system. He started with a task switcher in Intel 80386 assembly language, on 25 August 1991, Torvalds posted the following to comp. os. minix, a newsgroup on Usenet, Im doing a operating system for 386 AT clones. This has been brewing since April, and is starting to get ready, id like any feedback on things people like/dislike in minix, as my OS resembles it somewhat. Ive currently ported bash and gcc, and things seem to work and this implies that Ill get something practical within a few months Yes - its free of any minix code, and it has a multi-threaded fs. It is NOT portable, and it never will support anything other than AT-harddisks, as thats all I have.
Its mostly in C, but most people wouldnt call what I write C and it uses every conceivable feature of the 386 I could find, as it was a project to teach me about the 386. As already mentioned, it uses a MMU, for both paging and segmentation and its the segmentation that makes it REALLY386 dependent. Some of my C-files are almost as much assembler as C, unlike minix, I happen to LIKE interrupts, so interrupts are handled without trying to hide the reason behind them. After that, many people contributed code to the project, early on, the MINIX community contributed code and ideas to the Linux kernel. At the time, the GNU Project had created many of the components required for an operating system