mardi 12 mai 2009

Introduction au système d'exploitation MS-Dos

A lot of people heard quite a lot about the MS DOS emulator dubbed DOSBox. Some of them were even given an opportunity to use it from time to time, but most of them — prospective users — are scared off by its seemingly complex configuration. A whole generation born in the 1980s was raised alongside the “Windows” environment or Linux systems when they gained in popularity. However, the author’s generation warmly reminisces of the good ol’ times of Doom and Duke Nukem 3D, or Wolfenstein 3D, which became a blueprint for all future FPSs and was dubbed a classic of its kind. I will try to make the configuration intricacies of the DOS emulator more understandable. But first…Pre-DOS timesThe PC boom in the 80s brought to life a whole range of new 8-bit home computers with such brands (also known in Poland) as Sinclair, Atari, Commodore, and Timex, among others. Rising numbers of PC hardware manufacturers brought a lot of problems to software and game developers. The crux of the matter was the fact that the first personal computers were not hardware and software compatible. Nearly all the manufacturers went for their money by inventing and touting new but proprietary technologies. Sometimes the policy brought results and created a whole range of successful products like the ZX Spectrum, Commodore 64, and Atari. Sometimes we were witnesses to spectacular failures as in the cases of Commodore +4 and Commodore 16/116. The push for platform “standardization” spread and started to become stronger day by day. The competition on that field was equally fierce. The first attempt back in 1983 brought to light the MSX standard. It was at that time when Microsoft focused its forces on making the MSX DOS operating system. Unfortunately, MSX didn’t catch the world’s attention. It became a success in Asian and South American markets only. MSX’s successors, namely MSX2/MSX2+, were altogether unknown apart from the fact that they existed.C128. Source: WikimediaA true breakthrough is connected with the CP/M system, which happened to become a predecessor to DOS. CP/M was written in 1974 for the Intel 4004 processor, only winning its popularity later in the 80s. It found a strong market in Poland thanks to the home computers equipped with the Zilog Z80 processor. Initially, the most known manufacturers like Amstrad, Schneider, or Sinclair came to the chip with caution and didn’t want to get rid of their own proprietary standards. They even tried embedding a second processor slot beside the existing one as in the case of the Commodore 128, which resulted in higher computer prices, of course. It’s worth mentioning that CP/M demanded a diskette drive as it was written for the media. Because Z80 was used by Amstrad from the beginning, its computers gained a sort of advantage over competition. A new disk drive, the FDD3000 for Timex (ZX Spectrum clone), was also created. Timex was the de facto stand alone computer which sported its own processor and RAM.Commodore 128 on the other hand moved significantly ahead of its time. One could say that the single case contained three separate computers, as it was able to work in three separate “computer” modes:C64 Mode – classic Commodore 64 with Basic, or with windowed GEOS 2.0 operating system. This op-sys was modelled on Mac OS and many of its solutions were later “incorporated” by Microsoft. It was the Mac OS and the GEOS which, for the first time, introduced windows technology “on such a scale” and the commonly known layout with a menu and so-called top bar. Even an office suite existed in that time, but no one called it so. The suite consisted of the GeoWrite word processor, GeoCalc spreadsheet, GeoPaint graphics editor, and GeoPublish as a DTP application. The op-sys was distributed on one 5 1/4″ diskette with 170 kB memory and worked on 8-bit computers with 64 kB RAM memory!C128 Mode – truly next generation computer programmed with new, revolutionary Basic and working under GEOS 128.CP/M Mode – the 6502 processor went inactive and the Z80/A took the work on. This mode enabled 80×25 chars display resolution!The machine was sold in two versions: with a casing similar to the Commodore Amiga 500, and with a box resembling the PC XT central unit with a separate keyboard. Sadly, these machines and the Sam Coupe, the successor to ZX Spectrum, didn’t gain popularity and the newly emerged generation of 16-bit computers practically sunk the 8-bit flagships ultimately. This happened despite the fact that the 8-bit PCs hadn’t yet achieved their best performance and possibilities. Nobody expected then that the DOS system would share the same fate only a decade later, or that forcing one proprietary operating system, e.g. AmigaDOS, Atari DOS, would turn against its manufacturers/developers in the future, bringing down legendary machines like the Atari ST and Commodore Amiga in the process…MS DOS 6.22. Source: WikimediaMS DOS appearsMS DOS saw daylight at the end of 1980. It was kicked-off for the then new IBM/PC project and contained part of the CP/M code. It was called PC DOS until its 5th version when it was renamed to MS DOS. PCs started to gain in popularity in Poland in the late 80s/early 90s. At that time, there were three DOS versions on the market: MS DOS from Microsoft, PC DOS from IBM, and DR DOS from Novell. Although they seemed simple from today’s point of view, they demanded a fair amount of knowledge from their users. It was necessary to know the so-called internal and external interpreter commands. No wonder that soon both better and worse graphical and textual extenders (also called interfaces or, more pejoratively, “overlays”) facilitating DOS usage and its managerial tasks found ways to the market. It was at this time the legendary Norton Commander had surfaced and, although not efficient enough, it had the advantage of its ability to be stored on one diskette (after some tweaking).Not every PC user was financially able to buy a hard disk at the beginning of the 90s. Hard disks were then dubbed Winchesters and they were heavy and noisy due to the two driving motors — particularly, the stepper motor controlling the disk heads was exceptionally clunky. In widespread usage were 5 1/4″ form factor diskette drives which used floppy disks of the same size. The XT PC computers contained Intel processors: i8088 (16/8 bit databus), i8086 (16/16 bit databus), and Nec 20 (equivalent of i8086 but slightly quicker). Floppy drives offered 360 kB on two sides of “soft” diskettes (so-called DD floppies). Only then, with a new generation of AT PCs (starting with i80286 processors), old floppy diskette drives saw an inflation in storage capacity to 1.2 MB and a new breed of FDDs emerged, able to store 1.44 MB.Hard disks were also modest from our modern views, to say the least. The cheapest ones had 10 MB (yes, in megabytes!) raw capacity with the “better” and most popular models having only 20 MB. They needed to be formatted once a year. Using stepper motors for head movement was limited by thermal expansion and sooner or later a given head wasn’t able to read “its” path (cylinder/sector). The drives could only work in two positions — horizontal or vertical, and none of them could be put to work in a position other than the one with which it was formatted. This limit is a matter of the past nowadays. Modern drives implemented head movement corrections obviating thermal expansions.Norton Commander was not the only kid in town. We would find, among others, such file managers as:GEM – being developed by the Open Source community up to now.GEOS (Breadbox Ensemble) – not a bad trial to port the famous C64 GEOS to the PC platform. Modern GEOS looks like Windows 98, uses shortcuts and long file names. Alas, too late.WinDOS – graphical overlay which gained little interest.MS DosShell – Microsoft graphical overlay attached to MS DOS 6.2x, together with MS Antivirus, and other tools.Xtree – graphical interface ported from the Unix world. It is still under development. It can be found on many repos for GNU/Linux and Mac OS systems.Windows, a true DOS killerAfter MS Windows’ first release, the early symptoms of MS DOS’ aging had appeared. The so-called backward compatibility with XT started to make developers increasingly frustrated. Only a few know that up to the late 90s, the original IBM PC was switching to ROM BIOS, prompting users to plug in a tape recorder to the RS-232 port after removing all its disk drives and restarting the computer! Most MS DOS users don’t know that XMS (himem.sys) and EMS (EMM386.exe) memory drivers were… emulators of memory expansion cards forgotten long ago.XT could address only 640 kB memory. The range between 384 kB and 1 MB space addresses was called UMB memory (Upper Memory Block) and was used as a sort of RAM disk for immediate programs (resident programs). Additional RAM modules were inserted into 8-bit ISA slots. The XMS and EMS division reflected another fight for PC “standards”. We users had to atone for the technology sins up to Windows XP. Lack of backward compatibility with DOS programs found in Windows 2000 and Windows XP is a direct result of a breaking-off with the legacy of the backward compatibility.I intentionally put aside the Windows 95/98/ME family, as they were still de facto graphical overlays for the DOS system, and only partially broke off from former principles of memory usage. They mostly fixed the memory problem. But MS DOS was still enormously popular, and it didn’t help purposefully blocking DOS mode in Windows ME by Microsoft.The old habit of using MS DOS is so strong that many users still keep Windows 98 just for the DOS system! Unfortunately, support for Windows 9x and for the DOS system has ended, hence the need for a DOS equivalent which could replace the simple, incredibly quick and attractive system which “past us so early” from financial causes. Many users were outraged by Microsoft’s decision to stop DOS development and support. The works of the nascent Open Source community are split in two. One group creates FreeDOS — it is open DOS, 100% compatible with MS DOS, supporting networks, FAT32, long file names and 32-bit access to devices. Others decided to develop DOS emulators. And here we end our short story about operating systems.In the follow-up article we are going to take a close look to DOSBox, the best MS DOS emulator for Windows, Mac OS X and GNU/Linux systems, which is a viable replacement for standalone DOS and is able to run almost 100% of the old DOS apps. Stay tuned!Translated by P202. Proof-read by Jake Conroy» Post Purchase: Text Link