`Weber
`
`54 MULTIPLE OPERATING SYSTEMAND
`DISPARATE USER MASS STORAGE
`RESOURCE SEPARATION FOR A
`COMPUTER SYSTEM
`
`75 Inventor: Harold J. Weber, Holliston, Mass.
`73 Assignee: Innova Patent Trust, Centerville,
`Mass.
`
`21 Appl. No.: 09/048,304
`22 Filed:
`Mar. 26, 1998
`(51) Int. Cl." ........................................................ G06F 9/00
`52 U.S. Cl. .................................... 713/1; 713/2; 713/200
`58 Field of Search .................................... 713/2, 1, 100,
`713/200
`
`56)
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`
`5,640,562 6/1997 Wold et al. ................................. 713/2
`5,675,795. 10/1997 Rawson, III et al. ...
`... 713/2
`5,887,163 3/1999 Nguyen et al. ..........
`... 713/2
`5,920,709
`7/1999 Hartung et al. ......................... 395/309
`Primary Examiner Dennis M. Butler
`57
`ABSTRACT
`A computer System including Several nonconcurrently active
`hard disk drives ordinarily loaded with unique software
`
`US006067618A
`Patent Number:
`11
`(45) Date of Patent:
`
`6,067,618
`May 23, 2000
`
`bundles. Each active hard drive introduces an especial
`operating System Setup and applications installation which is
`unconditionally denied acceSS by activities obtained under
`another hard disk drive's Software instructions. An absolute
`isolation between two or more user's application programs
`and data files is achieved while Sharing a common Set of
`computer System hardware and peripherals. Each category
`of nonconcurrent user operates independently without a
`threat of corruption from activities of another prior or
`Subsequent user utilizing the same computer System for
`another disparate activity. In an IDE/ATA interface
`environment, a typical arrangement includes a Setting of
`ROM-BIOS to only recognize a MASTER drive with a
`Subsequent user determined swapping of MASTER and
`SLAVE modes between at least two hard drives utilizing a
`manual Switch-over to obtain operation under operating
`System and programs uniquely installed on each of the
`intently selected MASTER drives, while denying access to
`the alternant SLAVE drive. In an SCSI interface
`environment, several drives set with the same SCSI-ID
`number are Selected between by manually controlling a
`completion of the SCSI bus SEL line to the active intended
`drive and interrupting the SEL line to designated inactive
`drives. Virus corruption of one primary drive is fire-walled
`against inadvertent transfer into an alternate primary drive
`thereby assuring System operating integrity for one user
`category in Spite of virus contamination, command errors, or
`careleSS or malicious hacking introduced by another user
`category.
`
`20 Claims, 14 Drawing Sheets
`
`32
`NVIDEO
`- N - ,
`,
`,
`
`34
`->
`, ,-EE -
`E.
`- -
`- - 36
`44
`42
`40
`KEYBOARD
`{2NTERAf EE
`
`
`
`2
`
`- -
`4.
`
`Eko
`2-2
`
`CPU
`ERAM, KHO
`BANK E.
`
`6
`
`ROM
`BOS
`
`DMA
`
`is
`
`f
`
`3O
`
`20
`
`22
`
`
`
`"Tie 2 6
`USER
`
`
`
`HARD DISK
`SELECTION
`
`7
`
`-i-.
`
`Petitioners Microsoft Corporation and HP Inc. - Ex. 1021, p. 1
`
`
`
`U.S. Patent
`
`May 23, 2000
`
`Sheet 1 of 14
`
`6,067,618
`
`
`
`—q––
`
`89|__NOIINGANI
`
`Z
`
`| •
`
`ZZ
`
`08 E |-
`
`
`
`Z-Z |
`
`Petitioners Microsoft Corporation and HP Inc. - Ex. 1021, p. 2
`
`
`
`U.S. Patent
`
`May 23, 2000
`
`Sheet 2 of 14
`
`6,067,618
`
`
`
`Petitioners Microsoft Corporation and HP Inc. - Ex. 1021, p. 3
`
`
`
`U.S. Patent
`
`May 23, 2000
`
`Sheet 3 of 14
`
`6,067,618
`
`102-1
`
`USER A
`
`a
`
`100-
`
`O4-
`
`". 100-2
`
`USER B
`
`a
`
`O4-2
`
`102-3 T 100-3
`
`USER C
`
`as
`
`O4-3
`
`APPLICATION
`PROGRAM 8.
`FILES
`
`APPLICATION
`PROGRAM &
`FILES
`
`APPLICATION
`PROGRAM &
`FLES
`
`106-1
`
`O6-2
`
`O6-3
`
`HIGH
`LEVEL
`LANGUAGE
`
`HIGH
`LEVEL
`LANGUAGE
`
`HIGH
`LEVEL
`LANGUAGE
`
`O8-
`
`O8-2
`
`O8-3
`
`SHELL
`WINDOWS
`95
`
`SHELL
`DOSSHELL
`
`SHELL
`WINDOWS
`3,
`
`O-l
`
`O-2
`
`r re
`l
`
`2O-
`
`HARD DISK
`DRIVE
`
`HARD DISK
`DRIVE O
`
`
`
`O-3
`
`re
`
`120-2
`
`120 3
`HARD DISK
`DRIVE 2
`
`HARD DRIVE
`OST
`
`EPTER 130
`128
`122
`
`- 142
`44
`-7
`HDD
`146-3 EcoS MGR,
`26
`24
`
`MODE
`
`3
`
`Eriker'ss
`
`Petitioners Microsoft Corporation and HP Inc. - Ex. 1021, p. 4
`
`
`
`U.S. Patent
`
`May 23, 2000
`
`Sheet 4 of 14
`
`6,067,618
`
`7
`6
`
`17O
`
`64
`
`172
`
`KEYBOARD I
`
`lé6
`
`i 56
`
`6
`
`58
`
`60
`
`KEYBOARD
`INTERFACE
`
`SYSTEM
`MEMORY
`DRAM
`
`SYSTEM
`ROM-BIOS
`
`
`
`R.T.C. &
`CMOS
`
`FIG. 4.
`18
`O
`
`ls
`
`BSA, KDROM BIOS
`
`78
`
`VIDEO
`
`ADAPTER
`
`150 86
`
`VIDEO
`
`kios
`
`82
`PARALLEL
`INTERFACE
`PT PORTS
`
`SERIAL
`INTERFACE
`COM-PORT
`
`8OX86
`MICROPROCESSOR
`
`
`
`Eyea MATH
`CO-PROC.
`
`54
`
`
`
`152
`
`84
`210
`96
`USER
`98 MODE
`MGR.
`
`2
`
`l
`
`s
`194- FDD
`E. E.
`
`DEVICE
`
`DEVICE
`
`90
`
`2O2
`
`192
`194-2 IEEE
`T
`Ecs
`
`2OO-2
`
`USER
`
`*E. B.
`28-
`28-2
`
`
`
`USER 2
`
`USER3
`
`A
`
`SELECTOR
`
`USER HDD
`21622/
`
`ROM-BIOS
`
`2OO-3
`
`24
`
`-as s
`
`Petitioners Microsoft Corporation and HP Inc. - Ex. 1021, p. 5
`
`
`
`U.S. Patent
`
`May 23, 2000
`
`Sheet S of 14
`
`6,067,618
`
`SYSTEM
`
`22O
`
`222
`
`MANUAL
`MODE
`SELECTOR
`ECTO
`
`FIG. 5
`
`ROM - BOS
`SETUP
`
`240
`
`246
`
`(52
`
`YES
`
`EN DIS
`ENABLE
`DRIVE 2
`
`242
`
`NO
`
`26O
`264
`NO
`Y
`- 21,
`EN DIS
`EN DIS
`ENABLE
`ENABLE
`DRIVE
`DRIVE O
`
`
`
`
`
`CHANGE
`
`SELECTIO
`228
`YES 226
`23O
`
`SYSTEM
`RESET
`
`MANUAL
`
`SEM
`
`234
`
`250-3
`BOOT
`SOFTWARE
`BUNDE 2
`
`250-2
`BOOT
`SOFTWARE
`BUNDLE
`
`250
`BOOT
`SOFTWARE
`BUNDLE O
`
`252-3
`
`252-2
`
`252
`
`RUN
`RUN
`RUN
`SOFTWARE
`SOFTWARE / SOFTWARE
`BUNDE O
`BUNDE 2
`BUNDLE
`254-
`256
`254-3
`254-2
`256-3
`THRD
`SECOND
`FIRST
`USER
`USER
`USER
`
`256-2
`
`Petitioners Microsoft Corporation and HP Inc. - Ex. 1021, p. 6
`
`
`
`U.S. Patent
`
`May 23, 2000
`
`Sheet 6 of 14
`Sheet 6 of 14
`
`6,067,618
`6,067,618
`
`14S34
`
`WALSAS\
`
`
`
`I-82[-922
`
`OLE
`
`
`
`AN
`
`0-822
`
`C-9L7
`
`GYVH
`
`OSA),
`
`1-727
`
`
`
`g. ?Zz 8-944
`
`e-gsz&940
`
`QavH
`
`
`
` €-VZ2JAAIGA_____|
`
`O
`
`() N L
`
`C-¥L7
`
`€-7L7
`
`9S/H)me
`S0€90£
`
`
`Petitioners Microsoft Corporation and HPInc.- Ex. 1021, p. 7
`
`Petitioners Microsoft Corporation and HP Inc. - Ex. 1021, p. 7
`
`
`
`
`U.S. Patent
`
`May 23, 2000
`
`Sheet 7 of 14
`
`6,067,618
`
`
`
`Petitioners Microsoft Corporation and HP Inc. - Ex. 1021, p. 8
`
`
`
`U.S. Patent
`
`May 23, 2000
`
`Sheet 8 of 14
`
`6,067,618
`
`
`
`Petitioners Microsoft Corporation and HP Inc. - Ex. 1021, p. 9
`
`
`
`U.S. Patent
`
`May 23, 2000
`
`Sheet 9 of 14
`
`6,067,618
`
`ge
`
`e
`
`N
`
`s
`
`TTTTTTA(TTT (a
`
`CN
`
`CY
`
`O)
`
`O
`
`(TTTTTT)WTTT
`
`
`
`CN
`SO
`CY)
`
`SO
`CY)
`
`rt
`WO
`CY)
`
`CN
`sC)
`CY
`
`3
`
`/
`
`Petitioners Microsoft Corporation and HP Inc. - Ex. 1021, p. 10
`
`
`
`U.S. Patent
`
`May 23, 2000
`
`Sheet 10 of 14
`
`6,067,618
`
`N
`A
`
`s
`
`|
`
`- 9
`-55
`segg.T.T. CY
`Ca
`T
`
`m
`
`| ||
`3u
`CN He
`S.
`Segi TTTTTTTTTTTk
`Cas
`& S
`cy)
`cry
`
`Co V a
`C O O
`N
`2 O
`1 g
`
`/
`
`
`
`OO
`n
`CY)
`
`3
`
`Petitioners Microsoft Corporation and HP Inc. - Ex. 1021, p. 11
`
`
`
`U.S. Patent
`
`May 23, 2000
`
`Sheet 11 of 14
`
`6,067,618
`
`OPERATING ar
`sig"
`
`4OO
`
`COMPUTER
`
`4O8
`
`4O2
`
`4O6
`
`44
`
`=
`
`46
`48
`
`420.1 426
`
`USER
`MODE
`MANAGER
`
`43O-2
`
`404
`
`AUTO-REBOOT
`
`
`
`
`
`
`
`Z
`
`422
`
`HDD
`AGER
`MAN
`
`428-
`
`428-2
`
`APPLICAN
`SOFTWARE
`BUNDLE O
`
`APPLICAT"N
`SOFTWARE
`
`432-2
`
`Petitioners Microsoft Corporation and HP Inc. - Ex. 1021, p. 12
`
`
`
`U.S. Patent
`
`May 23, 2000
`
`Sheet 12 of 14
`
`6,067,618
`
`FIG. 12
`
`446
`
`440
`
`448
`
`E
`
`"k SYSTEM
`
`COMPUTER
`
`Y's 45O
`444
`
`ZY
`
`456
`
`454
`
`462
`460
`
`464
`
`466
`
`USER
`
`468-
`
`47O-
`
`4722468-2
`
`
`
`
`
`SYSTEM O
`
`SYSTEM
`
`468-3
`
`470-2
`
`472-3
`47O-3
`
`OPERATING
`
`Rock- MANAGER
`:
`472- Gr
`Ster
`ster
`ster
`OPERATING
`
`474
`
`474-2
`
`
`
`
`
`APPLICATION
`SOFTWARE
`
`APPLICATION
`SOFTWARE
`BUNDLE
`
`
`
`APPLICATION
`SOFTWARE
`BUNDLE 2
`
`Petitioners Microsoft Corporation and HP Inc. - Ex. 1021, p. 13
`
`
`
`U.S. Patent
`
`May 23, 2000
`
`Sheet 13 of 14
`
`6,067,618
`
`FIG. I5 or -, *
`
`482 490
`
`N
`
`COMPUTER
`
`48O
`484 V =
`Sai"
`496
`494
`
`486
`to
`
`488
`
`5OO
`
`OPERATING
`SYSTEM
`SOFTWARE
`
`
`
`O4
`
`502
`
`5O6
`
`50
`
`HDD
`
`a.
`
`522-
`520
`
`
`
`
`
`54
`MANAGER KOW MANAGER
`f
`f 58-3
`58-2
`522-2
`APPLICATION 520-2 APPLICATION
`soFTWARE
`SOFTWARE
`BUNDLE O
`BUNDLE
`
`52
`
`USER
`MODE
`
`520-3
`APPLICATION
`SOFTWAREN
`BUNDE 2
`522-3
`
`
`
`
`
`HARD DRIVE O
`
`HARD DRIVE
`
`524-3
`
`it FILES
`
`HARD DRIVE 2
`
`Petitioners Microsoft Corporation and HP Inc. - Ex. 1021, p. 14
`
`
`
`U.S. Patent
`
`May 23, 2000
`
`Sheet 14 of 14
`
`6,067,618
`
`
`
`
`
`83/WOd
`1SOH
`
`
`
`Twyn Nw/W
`
`TO?!!NOD
`
`Petitioners Microsoft Corporation and HP Inc. - Ex. 1021, p. 15
`
`
`
`6,067,618
`
`1
`MULTIPLE OPERATING SYSTEMAND
`DISPARATE USER MASS STORAGE
`RESOURCE SEPARATION FOR A
`COMPUTER SYSTEM
`
`15
`
`2
`underlying interfacial Support and operational character to
`the operating System.
`In this typified Microsoft setup, the Windows 3.11 acts
`essentially like a shell program which resides above the
`typical MS/DOS 6.2 (or equivalent) operating system instal
`lation. These system files couple with the COMMAND.
`COM file in the system's root directory and together the
`combination affords the most fundamental functional
`aspects of the operating System. AS is well known, many
`other files under the C:\DOS and C:\WINDOWS directory
`(or equivalent) develops the full character or “style and feel”
`of the Windows 3.11 operating system.
`WindowS-95 is a contemporaneous "operating System’,
`arguable as to whether it is a shell program that includes an
`underlying and transparent MS/DOS 7 operating system.
`The intermix of MS/DOS and Windows programs portions
`are so thorough with Windows-95 that the Windows-95
`portions can not be readily stripped from the MS/DOS 7
`portions and subsequently operated solely in the MS/DOS 7
`mode. As a result, it is relatively Safe to Say that the
`WindowS-95 is an operating System or at the very least, a de
`facto operating System.
`Hardware Sharing Two Operating Systems
`A Single computer may Support two or more absolutely
`incompatible operating Systems if Some way is provided for
`determining the unconditional choice of a preferred operat
`ing System during Start-up initialization. Almost without
`exception, it is preferable that the current or active operating
`system for a computer be booted up through Drive C. At
`least this is currently the usual procedure for most personal
`computers. For example, with personal computers using
`IDE/ATA interface bus coupling of the hard drive(s), the
`MASTER is ordinarily recognized as Drive C. Comparably,
`with a SCSI interface bus coupling of the hard drive(s), the
`hard drive set with an SCSI-ID 0 (SCSI device
`identification) is similarly recognized as Drive C.
`Primarily this determination is made because many pro
`grams make fundamental assumptions that the underlying
`operating System components are indeed going to be found
`on Drive C. It is also preferable because, during installation
`of a major program Such as a full-capability wordprocessor,
`or desktop publishing Software the configuration of the
`program is often done relative with the Drive C.
`AS a result, if two or more operating Systems are to be
`used on the same personal computer, the Selected active
`operating system must be configured to “look like” Drive C
`in order to assure best operational results.
`In such an arrangement, Microsoft Windows 3.11 and
`Microsoft Windows-95 may both be run on the same
`machine, if the System boot data for the Selected operating
`System is made to unequivocally appear to reside on Drive
`C.
`It is perhaps even more desirous that Some capability be
`retained in a contemporary computer to run raw MS/DOS
`Software, Such as games and busineSS programs into which
`a user may already have made a considerable investment. AS
`a result, it is not at all unusual to prefer that a computer can
`be brought up under Windows-95 for contemporary
`programs, while alternatively the same computer can be
`initialized under a generic MS-DOS operating System Such
`as MS-DOS 6.2 in order to run programs purchased by the
`user only a few years earlier.
`While it is indeed possible to run many MS-DOS pro
`grams under Windows-95, recall that MS-DOS 6.2 (for
`example) affords many singular operating features which
`
`BACKGROUND OF MY INVENTION
`A personal computer of the widely utilized “IBM-type',
`including the many clones and variations made by Dell,
`Hewlett-Packard, Compaq, Gateway-2000, Micron,
`Packard-Bell, ProGen, Digital-Equipment and many, many
`other makerS is the type of computer System for which my
`invention is particularly intended. This type of computer
`commonly includes a microprocessor manufactured by Intel,
`Cyrix or AMD. For example, the Intel Pentium class is a
`particularly well established microprocessor family in con
`temporary personal computer designs. A variation on the
`entrenched microprocessor is also demonstrated by a Stron
`gARMTM which is a RISC design licensed by Advanced Risc
`Machines Ltd., Cambridge, England to Digital Equipment
`Corp., Maynard, Mass. (as acquired by Compaq Computer).
`This StrongARMTM device is said to be capable of running
`under nine different operating Systems and currently finds
`application in Apple Computer Inc.'s NewtonTM hand-held
`computer, as well as in an internet-ready telephone produced
`25
`by Phillips Electronics-NV, and other consumer and com
`mercial applications.
`The usual PC embodiment, as upgraded from the original
`IBM Corp. design circa 1982 includes a microprocessor,
`DRAM and a ROM-BIOS which together with floppy disk
`and hard disk drive interface circuitry and miscellaneous
`housekeeping circuitry comprises a motherboard into which
`various function cards (or daughterboards) are plugged. The
`most common plug-in card is for the color Video display and
`currently of a category known as SVGA (Super Video
`graphics array).
`In a usual computer configuration, at least one hard disk
`drive is utilized as "Drive C' which includes “boot tracks'
`(track 0) holding Software code for an underlying operating
`system, such as the initial portion of Microsoft’s “Windows
`3.11 for Workgroups', for example. During a “cold boot'
`start-up, the ROM-BIOS introduces operational code to the
`microprocessor which Steps the System through a Subse
`quential Series of Self-test and initialization Steps, including
`memory verification. ROM-BIOS is a distinctly separate
`boot code contained on EPROM or FLASH-PROM inte
`grated circuits and ordinarily provided by Vendors under the
`names of Phoenix-BIOS, AMI-BIOS and Award-BIOS.
`Furthermore, the ROM-BIOS is uniquely tailored to the
`associated motherboard circuitry. Once these ROM-BIOS
`code functions have been mostly Satisfied, operation is
`transferred to the boot track () of the Drive C. This boot track
`includes System files which define the fundamental opera
`tional character of the computer once it is in full operation.
`Unlike the ROM-BIOS boot code, the boot track () code
`on the Drive C is somewhat more “generic' or universal in
`character, that is it is not necessarily tailored to the particular
`computer with which it is associated, but rather is quite the
`Same for nearly every computer. For example, with the
`mentioned Microsoft Windows 3.11, the most fundamental
`boot files ordinarily include the IO.SYS and MSDOS.SYS
`files, which are actually a part of the underlying MicreoSoft
`MS/DOS 4, 5 or 6 operating system.
`Separate CONFIG.SYS and AUTOEXEC.BAT files are
`utilized to tailor the Software to the unique accessorial
`configuration of a given computer System. In addition a
`COMMAND.COM file is ordinarily included to provide the
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`Petitioners Microsoft Corporation and HP Inc. - Ex. 1021, p. 16
`
`
`
`6,067,618
`
`15
`
`25
`
`35
`
`40
`
`3
`have been dropped from the usual MS-DOS 7 portion of
`Windows-95. More importantly, earlier MS-DOS DOS
`SHELL program formats are only available under the earlier
`versions of MS-DOS, such as MS-DOS 6.2.
`In addition to the mentioned combinations, many power
`users utilize Microsoft Windows-NT as a preference for
`business applications. The contemporary Windows-NT ver
`Sions include 3.51 and 4.0, with version 5.0 eminent. In this
`Setting, it is particularly botherSome to a user if the only
`available system is the Windows-NT Workstation 4.0 instal
`lation. It is absolutely unexceptional for busineSS programs
`and games which were not explicitly intended for use under
`Windows-NT to inadvertently crash, if they will even install
`and initialize properly. Part of the reason for this is that the
`Windows-NT system utilizes different device drivers and is
`furthermore lacking many older type device drivers.
`A variety of applications may be incompatible with
`Windows-NT. For example, those programs which are
`display-intensive, Such as paint programs may fail. Also,
`programs that directly acceSS Scanner, fax or terminal emu
`lation cards may fail. Other software which may fail
`includes those programs that access the hardware directly or
`rely on their own device drivers--either for printers, disk
`drives Scanners or video cards. This type of Software fails
`primarily because Windows-NT only accesses the hardware
`through the Win32 API or the Windows-NT Executive. As a
`result, “grandfathering an earlier printer, function card, or
`other device into the overall operating System and program
`combination becomes difficult if not impossible. The obvi
`ous result is the inevitable System crash, usually occurring at
`the worst possible moment.
`The same computer, equipped to run two distinctly dif
`ferent operating Systems. Such as the mentioned industrial
`strength Windows-NT Workstation 4.0 and the more versa
`tile Windows-95 or Windows-3.11 may make for a far more
`forgiving combination insofar as accepting older programs
`or non-32 bit game Software.
`Various combinations of operating Systems must be avail
`able to many power users in order to obtain optimum
`computer utilization. Typical of the categories of operating
`Systems or pseudo-operating Systems include:
`Windows NT WorkStation 3.51
`Windows NT WorkStation 4.0
`Windows 95
`Windows 98
`IBM OS/2
`DR-DOS (Novell)
`Unix
`Linux
`DOS 6.22 (and earlier variants)
`Virtual and Real Drive Assignment
`Programs are known which can reassign logical drive
`letters for purpose of redirecting disk requests from one disk
`to another. The long-used MS-DOS ASSIGN command can
`temporarily redesignate drive letters. For example,
`C:\DOSAASSIGN C=D D=C
`serves to redesignate Drive C as Drive D and conversely
`Drive D as Drive C. This is a virtual reassignment and
`unfortunately Such reassignment is unpredictably temporal.
`Typically this mentioned reassignment, when placed in the
`AUTOEXEC.BAT file, may create a virtual Swap of the C
`and D drive logical assignments, at least while operating
`under MS-DOS. With my invention, the reassignments are
`
`4
`absolutely hardware established, non-virtual and thereby
`intrinsically stable in character.
`AUTO-CADTM and IMSI TURBOCADTM
`Programs
`Engineering and architectural oriented Computer Aided
`Design (i.e. CAD) programs, Such as the ubiquitous AUTO
`CADTM and IMSI's TURBO-CADTM are widely used for
`drafting and product design applications. These are massive
`programs including many ancillary files and Subroutines.
`Speed of performance is of utmost essence in this Sort of
`program environment, particularly if 3-D rendering and
`other high-end techniques are to be included as a part of the
`usual AUTO-CADTM or TURBOCADTM application.
`AS a result of these performance demands, it is clearly
`advantageous to have a dedicated computer System which
`carries the least amount of extraneous Software overhead.
`This unburdens the Software and hardware “housekeeping”
`functions to a minimum level, with the focus of the com
`puter's functional operation being that of Singularly Satis
`fying the CAD program's requirements.
`Since an expensive, high-end computer System with as
`much DRAM as possible is a best choice for CAD
`applications, Simple economics dictates that whatever other
`office needs are required ought to be met on the same
`hardware base.
`With my invention, I teach how two hard drives might be
`utilized with the same computer System to achieve this
`dual-role objective. A large hard drive, for example
`6-gigabyte or larger drive might be selected for the CAD
`applications whilst only 1 or 2-gigabyte of drive Space may
`more than Satisfy the much less demanding business
`applications, Such as word processing. Furthermore, the
`CAD program may preferably run under Windows-NT while
`the business programs may not be compatible with
`Windows-NT but rather require Windows-3.11, Windows
`95 or even plain-vanilla MS-DOS. During boot-up the CAD
`oriented drive may be Selected and brought up as the
`principal drive giving optimum access to the mentioned
`6-gigabyte drive and loading a robust operating System Such
`as Windows-NT optimized solely for the CAD program.
`Alternatively, if busineSS functions are the current work
`objective, the computer may be re-booted to recognize the
`other Smaller mentioned drive as the principal drive along
`with a more meager operating System. Also paramount in
`this is that the CAD images stored on the dedicated CAD
`drive can not be spoiled by any action whatsoever under
`taken when running in the busineSS program mode.
`Software Selection of Operating System
`Also known is a multi-operating System Selection pro
`gram based upon Software Selection of any one of Several
`potential operating systems. The “SYSTEM COM
`MANDER" made by V-Communications is an example of
`this Sort of Software approach which essentially establishes
`Separate hard drive partitions for holding Separate operating
`systems. What it fails to do is establish an unequivocally
`Separate one of two or more hard disk drives as a dedicated
`Drive C System disk for unique usage by each of the Selected
`operating systems, with the Boot Track () of the active Drive
`C utilized for boot-up of the immediately active operating
`System.
`
`45
`
`50
`
`55
`
`60
`
`65
`
`FIELD OF MY INVENTION
`My invention pertains to the general field of personal
`computers utilizing a hard disk drive mass-Storage medium
`
`Petitioners Microsoft Corporation and HP Inc. - Ex. 1021, p. 17
`
`
`
`6,067,618
`
`S
`and in particular when the personal computer is booted
`between the ROM-BIOS code and the program data files
`through boot track data usually stored on track () of the hard
`disk drive. My invention pertains most applicably to (but it
`is not solely limited to) that class of personal computers
`commonly known as “IBM-type” typically utilizing an Intel
`microprocessor and utilizing disparate operating Systems,
`which may include combinations of Similar operating SyS
`tems such as Microsoft's Windows-95 and Microsoft's
`Windows-NT or conversely, widely different operating sys
`tems such as Novell's DR-DOSTM, IBM's OS/2 and UNIX.
`SUMMARY OF MY INVENTION
`A personal computer System is provided with two or more
`hard disk drives, each of which may be independently
`assigned to a different user, a different operating System, or
`a different Set of applications. When the computer System is
`booted, one of the hard disk drives is Selected as the primary
`drive in order to establish the assigned operational charac
`teristics for the computer as fixed by the unique combination
`of operating System configuration and applications programs
`installed on the selected drive. All other hard disk drives are
`ordinarily disabled and ignored, with a result that whatever
`activity occurs relative with the Selected primary drive can
`have no effect whatsoever on the binary data Stored on any
`unselected Secondary drive. This provides each user or
`category of user with absolute immunity against Violation of
`his unique operating System, application program Setup and
`program data by another user, either through accidental or
`intentional access. It also Substantially isolates a user against
`Software virus insults which may be introduced by another
`USC.
`
`15
`
`25
`
`6
`merely be two or more children or teenagers who utilize the
`Same Shared computer System. In this Setting it is desirous
`that one user can absolutely not accidentally or intentionally
`corrupt another user's data or program files.
`A user may be singularly or plurally defined as being one
`or any number of individual perSons utilizing the computer
`resources for a common purpose. AS an example, in a home
`office Setting the adult user operating the home office envi
`ronment may be designated a “first user', while one or more
`children using the same computer hardware for an essen
`tially conflicting purpose of homework preparation or game
`playing may collectively be designated as a “Second user'.
`In my invention, a user is generally accepted as being a
`person who operates the computer through utilization of
`commercial Software packages, Such as Corel's
`WordPerfect, Microsoft's Office-97, Intuits QuickBooks or
`any of a number of games such as DukeNuken-3D. In
`general Such a plain-Vanilla user has little or no knowledge
`of, or interest in, "behind the Screen' hardware functions of
`the computer and therefore is ordinarily not a technical
`perSon.
`
`Multiple Operating Systems
`In one of its preferred forms my invention is a hardware
`determined multiple operating System Selection method for
`use with a quasi-standard “IBM-type' computer system
`commonly called a “PC” and typically utilizing an Intel,
`AMD or Cyrix microprocessor. This type of ubiquitous
`computer configuration is described in detail in “The Winn
`L. Rosch Hardware Bible”, 3 Ed., ISBN 1-56686-127-6,
`(C1994 SAMS Publishing, Indianapolis, Ind. 46290. Further
`information pertaining to this class of computers is found in
`“The Indispensable PC Hardware Book'', 2'' Ed., Hans
`Peter Messmer, ISBN 0-201-87697-3 (C) 1995 Addison
`Wesley Publishing Co., Wokingham, England. Realize that
`throughout my writing, the term PC shall imply the “IBM
`type' unless otherwise Said.
`All PC systems include a ROM-BIOS. (a Basic Input/
`Output System stored in a Read Only Memory integrated
`circuit on the computer's motherboard). It is the purpose of
`the ROM-BIOS to “kick-start” the computer when it is first
`powered-up. A Series of Self-tests mostly involving the
`motherboard Setup, memory check and accessory device
`configurations Such as the Video display, keyboard, mouse
`and other similar functional needs is the usual first Sequence
`of steps spent by the ROM-BIOS activity. Typical ROM
`BIOS software includes the AMIBIOSTM by American
`Megatrends Inc., typified by a release of May 6, 1996,
`identified as 41-P400-001437-00101111-101094
`486AVIP-H and utilized with an AMD 5x86 133-MHz
`microprocessor. Another ROM-BIOS is represented by the
`AWARD MODULAR BIOSTM produced by Award Software
`Inc. and typified by a release version V4.51PG (C1984–1997
`and utilized with an Intel Pentium--MMX 200-MHz micro
`processor.
`During the early stages of the ROM-BIOS boot cycle, a
`“Setup' mode is ordinarily made available. By entering
`Setup, typified by pressing the DEL key immediately upon
`cold-boot, the ROM-BIOS displays a local program which
`is used for fundamental Setup purposes in defining System
`hardware configurations, operating modes, operational Set
`tings and So forth. I contend that any computer oriented
`artisan familiar with the operational underpinnings of the
`usual PC is also familiar with this available ROM-BIOS
`Setup procedure.
`IDE/ATA Hard-Disk Interface
`Upon entering ROM-BIOS setup mode, one of the pre
`Sented queries is for the user to define the available disk
`
`35
`
`40
`
`45
`
`50
`
`Class Definition of a User
`For purpose of my invention a “user” may be inherently
`Singular or plural and generically describes one or more
`individual perSons utilizing a computer's Software resources
`for a common or Similar purpose. Furthermore, the same
`individual perSon may be a plural user. Sometimes a user
`may be referred to as an operator. The terms perSon and user
`are also intentionally gender neutral. For example, office
`workers who work with word processors, data bases and
`Spreadsheets may define one class of user. A different class
`of user may be perSons who regularly install and use games
`or spend time Surfing the internet. Yet another user class may
`include those who use graphic design, desktop publishing or
`engineering oriented programs. A most notable example of
`“dual user', that being the same “perSon' who acts as two
`users may be an architect, for example. In Such a Setting, on
`one hand, as a “first user he may maintain busineSS records
`on the computer, including programs Such as word
`processing, database files and the like. On the other hand, as
`a "second he may maintain complex architectural or engi
`neering programs and files, such as AUTOCAD or TUR
`55
`BOCAD.
`Users may be further defined and sub-classed to include
`different levels of individual users having nearly the same
`Software requirements. For example, clerical perSons using
`database and word processing programs may be a user class
`distinct from management perSons who may also utilize
`Substantially the same programs. These are examples of two
`categorical levels of users who may be advantageously
`defined as Separate classes and hence as different users for
`purpose of my invention.
`In another relationship between users, two distinctly
`Separate users for purpose of my invention's definition may
`
`60
`
`65
`
`Petitioners Microsoft Corporation and HP Inc. - Ex. 1021, p. 18
`
`
`
`6,067,618
`
`7
`drive hardware. This includes not only the usual floppy disk
`drive(s), but also it includes the available hard disk drives.
`Most mid-performance class PC systems utilize an IDE,
`EIDE or ATA (or equivalent) drive interface standard for the
`hard disk drives. A few drive models representative of this
`class of hard disk drives include:
`
`Maker
`
`Model
`
`SEAGATE
`MAXTOR
`OUANTUM
`FUJITSU
`
`ST3323A Medalist TM
`8432OD CrystalMaxTM
`OM3255OTM-A Fireball TM
`B431OOUD
`
`Capacity
`
`3.2-GB
`43-GB
`2.5-GB
`2.6-GB
`
`15
`
`The usual off-the-shelf computer system is ordinarily
`Supplied with a single hard disk drive. However, that same
`computer usually includes a provision for installing extra
`hard drives as options. An IDE/ATA type interface bus
`ordinarily permits two hard drives on the same cable. A full
`discussion of the IDE/ATA interface protocols and technical
`details is satisfactorily provided in “The SCSI Bus & IDE
`Interface', by Friedhelm Schmidt, pp 31-72 published
`(C) 1998 by Addison-Wesley-Longman, Ltd.
`Contemporaneous motherboards frequently include a dual
`IDE/ATA interface bus provision, including two Separate
`connectors. In other words, Such an arrangement may be
`used for up to four Separate hard drives. Sometimes, one of
`the IDE/ATA devices is a CD-ROM drive, but it is common
`practice to provide a direct interface between the CD-ROM
`drive and a corresponding interface connection on an acces
`Sory plug-in Sound card.
`For purpose of my ensuing discussion, let us assume two
`hard disk drives are used. To further define this discussion,
`the two hard drives are each MAXTOR model 71084R
`drives providing 1.08-GB of storage. In accordance with
`Maxtor's instructions, the same drive can be used in the
`MASTER and in the SLAVE position. In the MAXTOR
`drive, this is ordinarily accomplished by Swapping a jumper
`40
`marked J20.
`
`25
`
`35
`
`Maxtor Hard Disk Drive Model 71084R
`
`Jumper
`
`J2O
`
`Master/Single
`
`ON (Jumpered)
`
`Slave Only
`
`OFF
`
`45
`
`Other drive makes use other jumper Settings and for a
`converse example the SEAGATE Models ST3491A and
`ST3660Adrives require a jumper in order to define the slave
`drive, whereas a presence of no jumper defines the master
`drive position. This is substantially the opposite of the
`MAXTOR drive arrangement, but does not affect the Sub
`stance of my invention's applicability.
`I have found that I am able to select at least one of two
`installed drives by a procedure where the ROM-BIOS of the
`PC is Set to only recognize a Single hard disk drive. As a
`result, even if a second hard disk drive set to its SLAVE
`mode is present, it is absolutely ignored. This occurs because
`the computer's ROM-BIOS will only recognize a MASTER
`hard drive during initialization.
`During physical installation of the two hard drives, I have
`extended connection of the J20 jumper pins to a DPDT or
`equivalent Switch. With this arrangement, and by jumpering
`the common terminals of the DPDTSwitch, I have been able
`
`50
`
`55
`
`60
`
`65
`
`8
`to transfer the MASTER mode back and forth between the
`two disk drives. If this selection is made prior to boot and
`initialization, the computer assumes whichever disk drive
`appears jumpered by the setting of the DPDT switch to the
`“the' MASTER drive position. As a result, the other drive is