Serving Two Masters
If you are willing to boot DOS in order to boot Linux, you can use the LOADLIN program. In some cases, this is actually the best way to boot Linux. In particular, some sound cards will work under Linux only if they are first initialized under DOS.
Some people who were using LOADLIN to start up Linux from the DOS prompt have discovered that after installing Windows 95, they can't bring up a DOS command prompt window and boot Linux from there—and it is no fun to reboot into DOS in order to finally get into Linux. Perhaps you are one of those people.
As you have discovered, LOADLIN has some limitations. For example, you can't use it to boot Linux while you are running Windows. Even if you aren't running Windows, if you are using an extended memory manager, it must support VCPI in order for LOADLIN to work. However, these constraints don't cause problems if you run it from a CONFIG.SYS menu item. If menu support hasn't been added, your entire CONFIG.SYS file might look something like this:
DEVICE=C:\DOS\HIMEM.SYS DEVICE=C:\DOS\EMM386.EXE FILES=40 DOS=HIGH,UMB
Let's call that your DOS section. You will also need a LINUX section, and you will need to be able to choose between them. In order to cause DOS to allow you to choose between them while booting, you will need a MENU section. The result looks like this:
[MENU] MENUITEM=DOS, Boot DOS MENUITEM=LINUX, Boot Linux [DOS] DEVICE=C:\DOS\HIMEM.SYS DEVICE=C:\DOS\EMM386.EXE FILES=40 DOS=HIGH,UMB [LINUX] REM Here is where you would load a driver for REM a sound card that is not completely REM supported by Linux. SHELL=c:\LOADLIN\LOADLIN.exe @c:\LOADLIN\params
The @c:\LOADLIN\params means that the boot arguments for the kernel are kept in the file c:\LOADLIN\params. This file might look like:
The documentation that accompanies LOADLIN explains this in much more detail, but you are likely to find this explanation sufficient to start using LOADLIN under most circumstances.
Many distributions include a copy of LOADLIN. You can also ftp a copy of LOADLIN from tsx-11.mit.edu in the directory /pub/linux/dos_utils/ in the file LOADLIN15.tar.gz.
Michael K. Johnson is the editor of Linux Journal and has to boot Windows 95 in order to do OCR (Optical Character Recognition) to convert paper books into on-line ones. He entertains hopes that someday soon, he will no longer have the experience necessary to write an article like this...
Getting Started with DevOps - Including New Data on IT Performance from Puppet Labs 2015 State of DevOps Report
August 27, 2015
12:00 PM CDT
DevOps represents a profound change from the way most IT departments have traditionally worked: from siloed teams and high-anxiety releases to everyone collaborating on uneventful and more frequent releases of higher-quality code. It doesn't matter how large or small an organization is, or even whether it's historically slow moving or risk averse — there are ways to adopt DevOps sanely, and get measurable results in just weeks.
Free to Linux Journal readers.Register Now!
- Django Models and Migrations
- Hacking a Safe with Bash
- Secure Server Deployments in Hostile Territory, Part II
- Home Automation with Raspberry Pi
- The Controversy Behind Canonical's Intellectual Property Policy
- Huge Package Overhaul for Debian and Ubuntu
- Shashlik - a Tasty New Android Simulator
- KDE Reveals Plasma Mobile
- Embed Linux in Monitoring and Control Systems
- diff -u: What's New in Kernel Development