Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
OS/2
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
==Features and technology== ===User interface=== The graphic system has a layer named Presentation Manager that manages windows, fonts, and icons. This is similar in functionality to a non-networked version of [[X11]] or the [[Graphics Device Interface|Windows GDI]]. On top of this lies the Workplace Shell (WPS) introduced in OS/2 2.0. WPS is an [[object-oriented]] [[shell (computing)|shell]] allowing the user to perform traditional computing tasks such as accessing files, printers, launching legacy programs, and advanced object oriented tasks using built-in and third-party application objects that extended the shell in an integrated fashion not available on any other mainstream operating system. WPS follows IBM's [[Common User Access]] user interface standards. WPS represents objects such as disks, folders, files, program objects, and printers using the [[System Object Model]] (SOM), which allows code to be shared among applications, possibly written in different programming languages. A distributed version called DSOM allowed objects on different computers to communicate. DSOM is based on [[CORBA]]. The object oriented aspect of SOM is similar to, and a direct competitor to, Microsoft's [[Component Object Model]], though it is implemented in a radically different manner; for instance, one of the most notable differences between SOM and COM is SOM's support for inheritance (one of the most fundamental concepts of OO programming)—COM does not have such support. SOM and DSOM are no longer being developed. The multimedia capabilities of OS/2 are accessible through [[Media Control Interface]] commands. The last update (bundled with the IBM version of [[Netscape Navigator]] plugins) added support for [[MPEG]] files. Support for newer formats such as [[Portable Network Graphics|PNG]], [[JPEG|progressive JPEG]], [[DivX]], [[Ogg]], and [[MP3]] comes from third parties. Sometimes it is integrated with the multimedia system, but in other offers it comes as standalone applications. ====Commands==== [[File:Microsoft OS 2 Version 1.3 cmd.exe OS 2 Window 640x373.png|thumb|OS/2 Window ([[cmd.exe]]) on [[Microsoft OS/2]] Version 1.3]] The following list of [[command (computing)|commands]] is supported by cmd.exe on OS/2.<ref>{{Cite web|url=http://www.jatomes.com/Help/Os2Bat.php|title=JaTomes Help - OS/2 Batch File Commands|website=www.jatomes.com|access-date=2019-04-14|archive-date=2019-04-14|archive-url=https://web.archive.org/web/20190414130026/http://www.jatomes.com/Help/Os2Bat.php|url-status=dead}}</ref><ref>{{Cite web|url=http://www.jatomes.com/Help/Os2Cmd.php|title=JaTomes Help - OS/2 Commands|website=www.jatomes.com|access-date=2019-04-14|archive-date=2019-04-14|archive-url=https://web.archive.org/web/20190414130029/http://www.jatomes.com/Help/Os2Cmd.php|url-status=dead}}</ref> {{div col|colwidth=9em}} * [[ansi (command)|ansi]] * [[append (command)|append]] * [[assign (command)|assign]] * [[attrib]] * [[backup (command)|backup]] * boot * [[break (command)|break]] * cache * [[call (command)|call]] * [[cd (command)|cd]] * [[chcp (command)|chcp]] * [[cd (command)|chdir]] * [[chkdsk]] * [[CLS (command)|cls]] * [[cmd.exe|cmd]] * [[Code page|codepage]] * [[COMMAND.COM|command]] * [[comp (command)|comp]] * [[copy (command)|copy]] * createdd * [[date (command)|date]] * ddinstal * [[debug (command)|debug]] * [[del (command)|del]] * detach * [[dir (command)|dir]] * [[diskcomp]] * [[diskcopy]] * [[doskey]] * [[dpath]] * eautil * [[echo (command)|echo]] * [[endlocal]] * [[del (command)|erase]] * [[exit (command)|exit]] * extproc * [[fdisk]] * fdiskpm * [[find (Windows)|find]] * [[for (command)|for]] * [[format (command)|format]] * fsaccess * [[goto]] * [[graftabl]] * [[help (command)|help]] * [[if (command)|if]] * [[JOIN (command)|join]] * [[keyb (command)|keyb]] * [[keys (command)|keys]] * [[label (command)|label]] * makeini * [[mkdir|md]] * [[mem (command)|mem]] * [[mkdir]] * [[mode (command)|mode]] * [[more (command)|more]] * [[move (command)|move]] * patch * [[path (command)|path]] * [[pause (command)|pause]] * picview * [[pmrexx]] * [[print (command)|print]] * [[prompt (command)|prompt]] * pstat * [[rmdir|rd]] * [[recover (command)|recover]] * [[rem (command)|rem]] * [[ren (command)|ren]] * [[ren (command)|rename]] * [[replace (command)|replace]] * [[restore (command)|restore]] * [[rmdir]] * [[set (command)|set]] * setboot * setcom40 * [[setlocal]] * [[share (command)|share]] * [[shift (command)|shift]] * [[SORT (DOS command)|sort]] * spool * [[start (command)|start]] * [[SUBST|subst]] * syslevel * syslog * [[TIME (command)|time]] * trace * tracebuf * tracefmt * [[tree (command)|tree]] * [[TYPE (DOS command)|type]] * [[UNDELETE|undelete]] * unpack * [[ver (command)|ver]] * [[verify (command)|verify]] * view * vmdisk * [[vol (command)|vol]] * [[xcopy]] {{div col end}} ===Networking=== {{Expand section|date=April 2019}} The [[TCP/IP stack]] is based on the [[open-source software|open source]] [[BSD]] stack as visible with [[Source Code Control System|SCCS]] [[List of Unix commands|what]] compatible tools. IBM included tools such as ftp and telnet and even servers for both commands. IBM sold several networking extensions including NFS support and an X11 server. [[File:OS-2 Warp x86 Architecture.svg|thumb|323x323px|Architecture of OS/2 Warp under x86]] ===Drivers=== Hardware vendors were reluctant to support device drivers for alternative operating systems including OS/2, leaving users with few choices from a select few vendors. To relieve this issue for video cards, IBM licensed a reduced version of the [[UniVBE|Scitech display drivers]], allowing users to choose from a wide selection of cards supported through Scitech's modular driver design.<ref>{{cite web |url = https://www.redbooks.ibm.com/redbooks/pdfs/sg246621.pdf |publisher = [[IBM]] redbook |title = OS/2 to Linux Client Transition |year = 2004 |page = 9 |access-date = 2011-07-05 |url-status = dead |archive-url = https://web.archive.org/web/20111124022946/https://www.redbooks.ibm.com/redbooks/pdfs/sg246621.pdf |archive-date = 2011-11-24 }}</ref> [[File:OS2 Architecture Graphics.pdf|thumb|Document detailing OS/2's architecture.]] ===Virtualization=== OS/2 has historically been more difficult to run in a virtual machine than most other legacy [[x86]] operating systems because of its extensive reliance on the full set of features of the x86 CPU; in particular, OS/2's use of [[protection ring|ring 2]] prevented it from running in early versions of [[VMware]].<ref>{{cite web|title=A Notice to OS/2 Users|author=The VMware Team|url=http://www.vmware.com/support/reference/common/guest_os2_exp.html|url-status=dead|archive-url=https://web.archive.org/web/20060420232220/http://www.vmware.com/support/reference/common/guest_os2_exp.html|archive-date=2006-04-20}}</ref> Newer versions of VMware provide official support for OS/2, specifically for eComStation.<ref>{{cite web|url=http://partnerweb.vmware.com/GOSIG/eComStation_2x.html|title=Guest Operating System Installation Guide - eComStation 2.x|date=2014|publisher=VMware|access-date=2022-01-13}}</ref> [[VirtualPC]] from Microsoft (originally [[Connectix]]) has been able to run OS/2 without hardware virtualization support for many years. It also provided "additions" code which greatly improves host–guest OS interactions in OS/2. The additions are not provided with the current version of VirtualPC, but the version last included with a release may still be used with current releases. At one point, OS/2 was a supported host for VirtualPC in addition to a guest. Note that OS/2 runs only as a guest on those versions of VirtualPC that use virtualization (x86 based hosts) and not those doing full emulation (VirtualPC for Mac). [[VirtualBox]] from [[Oracle Corporation]] (originally [[InnoTek]], later [[Sun Microsystems|Sun]]) supports OS/2 1.x, Warp 3 through 4.5, and eComStation as well as "Other OS/2" as guests. However, attempting to run OS/2 and eComStation can still be difficult, if not impossible, because of the strict requirements of VT-x/AMD-V hardware-enabled virtualization and only ACP2/MCP2 is reported to work in a reliable manner.<ref>{{cite web|title=VirtualBox Guest_OSes|author=VirtualBox| url=http://www.virtualbox.org/wiki/Guest_OSes}}</ref> ArcaOS supports being run as a [[virtual machine]] guest inside [[VirtualBox]], [[VMware ESXi]] and [[VMWare Workstation]].<ref>{{cite web|url=https://www.arcanoae.com/wiki/arcaos/installation-planning/virtual-machine-configuration/|title=Virtual Machine Configuration|work=Arca Noae |access-date=2020-09-05}}</ref> It ships with VirtualBox Guest Additions, and driver improvements to improve performance as a guest operating system.<ref>{{cite web|url=https://www.arcanoae.com/wp-content/uploads/wiki/ArcaOS-changes.txt|title=ArcaOS 5.0 Changes|website=arcanoae.com|access-date=2020-09-04}}</ref> The difficulties in efficiently running OS/2 have, at least once, created an opportunity for a new [[Platform virtualization|virtualization]] company. A large bank in [[Moscow]] needed a way to use OS/2 on newer hardware that OS/2 did not support. As virtualization software is an easy way around this, the company desired to run OS/2 under a [[hypervisor]]. Once it was determined that VMware was not a possibility, it hired a group of Russian software developers to write a host-based hypervisor that would officially support OS/2. Thus, the [[Parallels (company)|Parallels, Inc.]] company and their [[Parallels Workstation]] product was born.<ref>{{cite web|title=Breaking News—Parallels Joins the PC and Server Virtualization Fray|author=Timothy Prickett Morgan|url=http://www.itjungle.com/breaking/bn090705-story01.html|work=itjungle.com|url-status=dead|archive-url=https://web.archive.org/web/20070403063933/http://www.itjungle.com/breaking/bn090705-story01.html|archive-date=2007-04-03|access-date=2007-10-19}}</ref> ===Security niche=== OS/2 has few native [[computer virus]]es;<ref>{{cite web|title=the effect of computer viruses on OS/2 and Warp|author=John F. Morar, David M. Chess|url=http://www.research.ibm.com/massive/vb95a.html|work=research.ibm.com|archive-url=https://web.archive.org/web/20110604175403/http://www.research.ibm.com/massive/vb95a.html|archive-date=2011-06-04}}</ref> while it is not invulnerable by design, its reduced market share appears to have [[Security through obsolescence|discouraged virus writers]]. There are, however, OS/2-based antivirus programs, dealing with DOS viruses and Windows viruses that could pass through an OS/2 server.<ref name="ClamAV">{{cite web |url=http://web.os2power.com/yuri/ClamAV |title=OS/2 Power Wiki : ClamAV |access-date=2012-08-17 |date=January 2011 |archive-url=https://web.archive.org/web/20101003215336/http://web.os2power.com/yuri/ClamAV |archive-date=2010-10-03 |url-status=dead }}</ref> ===Problems=== Some problems were classic subjects of comparison with other operating systems: *''Synchronous input queue (SIQ)'': if a GUI application was not servicing its ''window messages'', the entire GUI system could get stuck and a reboot was required. This problem was considerably reduced with later Warp 3 fixpacks and refined by Warp 4, by taking control over the application after it had not responded for several seconds.<ref>see IBM Developer Connection for OS/2, Internal Fixpack 12J</ref><ref name="pcw199407_handson">{{ cite magazine | title=Just jamming | magazine=Personal Computer World | date=July 1994 | last1=Bidmead | first1=Chris | pages=565–568 }}</ref>{{rp|pages=565|quote=A recurring problem you might have with OS/2 - I know I do - is lockup due to the input queue getting jammed. The symptom is a system that just stops responding to input from the keyboard and/or mouse. It's a weakness in the OS/2 design that Microsoft has crowed about in the past, although my sources tell me that it was Microsoft who put it there in the first place.}} *''No unified object handles (OS/2 v2.11 and earlier)'': The availability of threads probably led system designers to overlook mechanisms which allow a single thread to wait for different types of asynchronous events at the same time, for example the keyboard and the mouse in a "console" program. Even though ''select'' was added later, it only worked on network sockets. In case of a console program, dedicating a separate thread for waiting on each source of events made it difficult to properly release all the input devices before starting other programs in the same "session". As a result, console programs usually polled the keyboard and the mouse alternately, which resulted in wasted CPU and a characteristic "jerky" reactivity to user input. In OS/2 3.0 IBM introduced a new call for this specific problem.<ref>KbdGetConsole() and DosWaitMuxWaitSem(), see ''Control Program Programming Guide and Reference'', IBM OS/2 Toolkit</ref>
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)