WO2005017747A2 - Method for starting a computer system by means of a storage medium - Google Patents

Method for starting a computer system by means of a storage medium Download PDF

Info

Publication number
WO2005017747A2
WO2005017747A2 PCT/DE2004/001700 DE2004001700W WO2005017747A2 WO 2005017747 A2 WO2005017747 A2 WO 2005017747A2 DE 2004001700 W DE2004001700 W DE 2004001700W WO 2005017747 A2 WO2005017747 A2 WO 2005017747A2
Authority
WO
WIPO (PCT)
Prior art keywords
storage medium
computer system
bus
semiconductor
bus system
Prior art date
Application number
PCT/DE2004/001700
Other languages
German (de)
French (fr)
Other versions
WO2005017747A3 (en
Inventor
Thorsten Hoehnke
Original Assignee
Fujitsu Siemens Computers Gmbh
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Siemens Computers Gmbh filed Critical Fujitsu Siemens Computers Gmbh
Priority to EP04762545A priority Critical patent/EP1656613A2/en
Publication of WO2005017747A2 publication Critical patent/WO2005017747A2/en
Publication of WO2005017747A3 publication Critical patent/WO2005017747A3/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

The invention relates to a method for starting a computer system (3) by means of a semiconductor-based storage medium (1) that is linked with the computer system (3) via a bus system (2), whereby the bus system (2) requires a driver software (5) for operation together with the computer system (3) and whereby the start process of the computer system (3) can be divided up into various, subsequent N+M individual processes, an individual process N+1 representing the loading of the driver software (5) for the bus system (2). An individual process N which is carried out temporally prior to the individual process of loading the driver software (5) stores all information required to operate the semiconductor-based storage medium (1) in a predetermined storage area of the computer system memory (4).

Description

Beschreibungdescription
Verfahren zum Starten eines Computersystems mit einem SpeichermediumMethod for starting a computer system with a storage medium
Die Erfindung betrifft ein Verfahren zum Starten eines Computersystems mit einem Speichermedium, das mit dem Computersystem über ein Bussystems verbunden ist, und das Bussystem eine Treibersoftware zum Betrieb mit dem Computersystem benötigt.The invention relates to a method for starting a computer system with a storage medium which is connected to the computer system via a bus system, and the bus system requires driver software for operation with the computer system.
Im Computerbereich, insbesondere im Bereich des Personalcomputers, breiten sich mobile Datenträger aufgrund ihrer Prak- tikabilität und Vielseitigkeit immer mehr aus und finden zunehmend Verwendung in den verschiedensten Bereichen. Diese mobilen Datenträger sind Speichermedien, auch oftmals halbleiterbasierte Speichermedien, wie zum Beispiel Memory- Sticks, und sind über Bussysteme wie zum Beispiel USB (universal serial bus) leicht an ein Computersystem anschließbar. Dies führt dazu, daß manche Hersteller von Computersystemen bereits dazu übergehen durch diese Datenträger andere, bisher übliche Datenträger wie zum Beispiel Floppydisks und deren Laufwerke zu ersetzen.In the computer field, in particular in the field of personal computers, mobile data carriers are spreading more and more due to their practicability and versatility and are increasingly used in a wide variety of fields. These mobile data carriers are storage media, often also semiconductor-based storage media, such as memory sticks, and can be easily connected to a computer system via bus systems such as USB (universal serial bus). As a result, some manufacturers of computer systems are already starting to replace other, previously customary data carriers such as floppy disks and their drives with these data carriers.
Soll nun ein Computersystem von einem anderem Datenträger als zum Beispiel der Festplatte oder einer CD gestartet werden, so werfen sich hier Probleme auf. Aufgrund des Verzichts auf Floppydisklaufwerke steht kein anderes Laufwerk zum Starten des Computersystems zur Verfügung. Es muß dann von einem Speichermedium, zum Beispiel einem halbleiterbasiertem Speichermedium, zum Beispiel einem Memorystick gestartet werden. Die damit verbundenen Schwierigkeiten sind in der Druckschrift "Hols von Stöckchen" von Schmidt, J. und Vahldiek, A., Ct 2003 Heft 13, Seite 208-210, ausführlich beschrieben. Dort sind zwar Möglichkeiten aufgezeigt wie mit bestimmten Betriebssystemen und bestimmten mobilen Datenträgern das Booten eines Computersystems zu bewerkstelligen ist. Es ist darin aber auch beschrieben, mit welchen Schwierigkeiten und Einschränkungen ein solches Vorhaben belegt ist. Nur einzelne Kombinationen von bestimmten Betriebssystemen mit bestimmten Datenträgern oder Speichermedien lassen ein solches Vorhaben überhaupt und unter großen Schwierigkeiten zu.If a computer system is now to be started from a data medium other than, for example, the hard disk or a CD, problems arise here. Because floppy disk drives are not used, no other drive is available to start the computer system. It must then be started from a storage medium, for example a semiconductor-based storage medium, for example a memory stick. The difficulties involved are described in detail in the publication "Hols von Stöckchen" by Schmidt, J. and Vahldiek, A., Ct 2003 Issue 13, pages 208-210. There are shown options how to boot a computer system with certain operating systems and certain mobile data carriers. It also describes the difficulties with which and Restrictions such a project is documented. Only individual combinations of certain operating systems with certain data carriers or storage media allow such a project at all and with great difficulty.
In der Druckschrift US 2003/0005278 AI ist allgemein eine Vorgehensweise beziehungsweise ein Verfahren in Verbindung mit einem halbleiterbasierten Speichermedium beschrieben, mit dem ein Computersystem zu starten ist. Nicht beschrieben ist in Druckschrift US 2003/0005278 AI das Starten über halbleiterbasierte Speichermedien die an ein Bussystem, wie zum Beispiel USB, angeschlossen und darüber mit einem Computersystem, auch trennbar, verbunden sind. Hier entsteht die Problematik, daß das Laden der Treibersoftware für das Bussystem ein Teil des Startvorgangs des gesamten ComputerSystems ist. Bei diesem Teilvorgang erfolgt eine Reinitialisierung sämtlicher an das Bussystem angeschlossenen Laufwerke, Datenträger und Geräte. Dies führt, geht man gemäß Druckschrift US 2003/0005278 AI vor dazu, daß zu diesem Augenblick der Start- Vorgang des Computersystems mit einem Totalabsturz des Computersystems endet und nicht mehr weiter durchführbar ist.The publication US 2003/0005278 AI generally describes a procedure or a method in connection with a semiconductor-based storage medium with which a computer system is to be started. US 2003/0005278 AI does not describe starting via semiconductor-based storage media which are connected to a bus system, such as USB, and are also connected to a computer system, also separably. The problem arises here that loading the driver software for the bus system is part of the starting process of the entire computer system. In this sub-process, all drives, data carriers and devices connected to the bus system are reinitialized. According to US 2003/0005278 AI, this leads to the fact that at this moment the starting process of the computer system ends with a total crash of the computer system and can no longer be carried out.
Es ist die Aufgabe der Erfindung, ein Verfahren vorzuschlagen, womit das Starten eines Computersystems von einem Spei- chermedium auch dann möglich ist, wenn dieses über ein Bussystem an das Computersystem angeschlossen ist, und wenn das Bussystem zur Kommunikation beziehungsweise zum Betrieb mit dem Computersystem eine Treibersoftware benötigt.It is the object of the invention to propose a method by which a computer system can also be started from a storage medium if it is connected to the computer system via a bus system and if the bus system is one for communication or for operation with the computer system Driver software needed.
Diese Aufgabe wird durch das im Patentanspruch 1 beschriebeneThis object is achieved by that described in claim 1
Verfahren gelöst und durch die untergeordneten Patentansprüche vorteilhaft weitergebildet.Method solved and further developed advantageously by the subordinate claims.
Beim Starten eines Computersystems über ein Speichermedium oder ein halbleiterbasiertes Speichermedium, ist es erforderlich, alle Daten, die zum Starten des Computersystems erforderlich sind, in einem Speicher des Speichermediums oder des halbleiterbasierten Speichermediums zu speichern. Bei einem Startvorgang werden diese Daten aus dem Speicher des Speichermediums oder des halbleiterbasiertem Speichermediums gelesen. Dabei wird das Speichermediums oder das halbleiterba- sierte Speichermedium wie ein physikalisches Laufwerk verwendet und es wird durch ein BIOS (basic input Output System) des Computersytems diesem "Laufwerk" ein Laufwerksbuchstabe (C, D, E,...) zugewiesen. Beim Laden einer Treibersoftware für ein Bussystem, wie zum Beispiel USB (universal serial bus) werden an das Bussystem angeschlossene Peripheriegeräte neu initialisiert. Der ursprünglich durch das BIOS zugewiesene Laufwerksbuchstabe ist somit ungültig. Grundgedanke der Erfindung ist, vor dem Laden des Treibers für das Bussystem sämtliche Informationen des Speichermediums oder des halblei- terbasierten Speichermediums in einen reservierten Speicherbereich des Arbeitsspeichers des Computersystems zu speichern und aus diesem bei Bedarf wieder herauszulesen. Bedarf dazu besteht dann, wenn durch den Treiber des Bussystems bei der Reinitialisierung aller angeschlossenen Geräte des Bussystems das Speichermediums oder das halbleiterbasierte, oder auch mobile Speichermedium erkannt wird. Durch einen Vergleich der Initialisierungsdaten erfolgt die Erkennung des Speichermediums oder des halbleiterbasiertem Speichermediums als das "Startlaufwerk" , und die Eintragung des zugeordneten Lauf- Werksbuchstaben erfolgt entsprechend. Damit ist sichergestellt, daß der Startvorgang fortgesetzt und erfolgreich zu Ende geführt werden kann, da die Reinitialisierung für das "Startlaufwerk" umgangen wird.When starting a computer system via a storage medium or a semiconductor-based storage medium, it is necessary to store all the data required for starting the computer system in a memory of the storage medium or the to store semiconductor-based storage medium. When starting, this data is read from the memory of the storage medium or the semiconductor-based storage medium. The storage medium or the semiconductor-based storage medium is used like a physical drive and a BIOS (basic input output system) of the computer system assigns this drive to a drive letter (C, D, E, ...). When loading driver software for a bus system, such as USB (universal serial bus), peripheral devices connected to the bus system are reinitialized. The drive letter originally assigned by the BIOS is therefore invalid. The basic idea of the invention is to store all the information of the storage medium or the semiconductor-based storage medium in a reserved memory area of the working memory of the computer system and to read it out again if necessary before loading the driver for the bus system. There is a need for this if the storage medium or the semiconductor-based or also mobile storage medium is recognized by the driver of the bus system during the reinitialization of all connected devices of the bus system. By comparing the initialization data, the storage medium or the semiconductor-based storage medium is recognized as the "start drive", and the assigned drive work letter is entered accordingly. This ensures that the start process can be continued and successfully completed, since the reinitialization for the "start drive" is bypassed.
In den Speicher des Speichermediums, oder des halbleiterbasierten Speichermediums oder auch des mobilen halbleiterbasiertem Speichermediums, ist erfindungsgemäß eine Master- bootrecorddatei abgelegt, und darüber hinaus sind in einem vorbestimmten Speicherbereich Daten abgelegt, die beim Start- Vorgang des Computersystems durch das BIOS des Computersystems den mobilen Datenträger als ein Festplattenlaufwerk ausweisen. Das Verfahren eignet sich nicht nur für Betriebssysteme, die für Bussysteme an denen verschiedene Peripheriegeräte angeschlossen sind keine eigenen Treiber benötigen, wie das bei- spielsweise bei DOS der Fall ist, sondern vielmehr eignet sich auch dieses Verfahren für sämtliche andere Betriebssysteme die für diese Bussysteme eigene Treiber benötigen. Dies sind zum Beispiel sämtliche Windows-Betriebssysteme wie Windows 98, Windows ME, Windows XP, Windows NT sowie auch UNIX- Betriebssysteme wie zum Beispiel LINUX und ähnliches. Ebenso ist das Verfahren prinzipiell auch für flüchtige- und nicht- flüchtige halbleiterbasierte Speichermedien geeignet.According to the invention, a master boot record file is stored in the memory of the storage medium, or of the semiconductor-based storage medium or also of the mobile semiconductor-based storage medium, and moreover data are stored in a predetermined memory area which the mobile computer uses when the computer system is started by the BIOS of the computer system Identify media as a hard drive. The method is not only suitable for operating systems that do not require their own drivers for bus systems to which various peripheral devices are connected, as is the case with DOS, for example, but rather this method is also suitable for all other operating systems that are specific to these bus systems Need drivers. These are, for example, all Windows operating systems such as Windows 98, Windows ME, Windows XP, Windows NT as well as UNIX operating systems such as LINUX and the like. In principle, the method is also suitable for volatile and non-volatile semiconductor-based storage media.
Im folgenden ist die Erfindung anhand eines Ausführungsbei- spiels unter Zuhilfenahme von drei Figuren näher beschrieben. Es zeigt:The invention is described in more detail below on the basis of an exemplary embodiment with the aid of three figures. It shows:
Figur 1 eine schematische Darstellung des Computersystems mit Bussystem und angeschlossenen Peripheriegeräten,FIG. 1 shows a schematic representation of the computer system with bus system and connected peripheral devices,
Figur 2 einen erfindungsgemäßen Verfahrensablauf in symbolischer Darstellung,FIG. 2 shows a method sequence according to the invention in a symbolic representation,
Figur 3 eine schematische Darstellung des Speichermediums .Figure 3 is a schematic representation of the storage medium.
Figur 1 zeigt eine schematische Darstellung eines halbleiterbasierten Speichermediums 1, das über ein Bussystem 2 mit einem ComputerSystem 3 verbunden ist. Wie viele Bussysteme bietet auch dieses Bussystem die Möglichkeit, weitere halblei- terbasierte Speichermedien oder ähnliche für dieses Bussystem geeignete Peripheriegeräte anzuschließen. Dies ist in der Figur 1 schematisch und gestrichelt dargestellt, und da nicht erfindungswesentlich, auch ohne Bezugszeichen. Das Computersystem 3 weist einen Computersystemspeicher 4 sowie eine Treibersoftware 5 zum Betrieb des Bussystems 2 auf. Der Speicher des halbleiterbasierten Speichermediums 1 ist ebenso unterteilt in einen ersten bis dritten Speicherbereich 6, 7 und 8. In diesem ersten Speicherbereich 6 ist eine Master-Boot- Record-Datei 9 abgelegt, im zweiten Speicherbereich 7 sind alle Daten abgelegt die notwendig sind um das halbleiterbasierte Speichermedium 1 als eine Festplatte zu simulieren und im dritten vorbestimmten Speicherbereich 8 ist ein sogenannter Bootrecord hinterlegt, der einen Verweis auf den gültigen Bootloader, bei Windows PE ist das die Datei NTLDR, enthält.FIG. 1 shows a schematic illustration of a semiconductor-based storage medium 1 which is connected to a computer system 3 via a bus system 2. Like many bus systems, this bus system also offers the option of connecting further semiconductor-based storage media or similar peripheral devices suitable for this bus system. This is shown schematically and in dashed lines in FIG. 1, and since it is not essential to the invention, even without reference numerals. The computer system 3 has a computer system memory 4 and driver software 5 for operating the bus system 2. The memory of the semiconductor-based storage medium 1 is also divided into a first to third storage area 6, 7 and 8. A master boot record file 9 is stored in this first memory area 6, all the data required to simulate the semiconductor-based storage medium 1 as a hard disk are stored in the second memory area 7, and a so-called boot record is stored in the third predetermined memory area 8 which contains a reference to the valid boot loader, for Windows PE this is the NTLDR file.
In Figur 2 ist auf einer Zeitachse T, die nach unten weist, ein Verfahrensablauf dargestellt, der einzelne Schritte 0 bis N+M, eines Startvorgangs eines Computersystems 3 allgemein beschreibt. Im Fokus der Betrachtung liegt hierbei die zeitliche Abfolge eines Einzelvorgangs N und eines Einzelvorgangs N+l. Der Einzelvorgang N betrifft die Aktion, alle zum Be- trieb des halbleiterbasierten Speichermediums 1 notwendigen Informationen in einen vorbestimmten Speicherbereich des Computersystemspeichers 4 zu speichern. Dies sind in dieser Reihenfolge: Treiberdateien für das halbleiterbasierte Speichermedium, die Geräteerkennung und Gerätetypdaten des Halblei- terbasierten Speichermediums 1 und eine Treibersoftware 5 für das Bussystem 2.In FIG. 2, a process sequence is shown on a time axis T, which points downward, which generally describes individual steps 0 to N + M, a starting process of a computer system 3. The focus here is on the chronological sequence of a single process N and a single process N + 1. The individual process N relates to the action of storing all the information required for operating the semiconductor-based storage medium 1 in a predetermined storage area of the computer system memory 4. In this order, these are: driver files for the semiconductor-based storage medium, device identification and device type data of the semiconductor-based storage medium 1 and driver software 5 for the bus system 2.
Der darauf folgende Einzelvorgang N+l betrifft das Laden der Treibersoftware 5 für das Bussystem 2. Das Laden der Treiber- Software 5 des Bussystems 2 erfolgt aus dem Speicherbereich des Computersystemspeichers 4 heraus und in einer, dem Eingang in den Computersystemspeicher 4, umgekehrten Reihenfolge. Das heißt, die Gerätedaten und die Treibersoftware 5 sind im Computersystem 3 hinterlegt, und werden somit nach der I- nitialisierung sämtlicher am Bussystem 2 angeschlossener Geräte aus diesem Speicherbereich wieder herausgelesen und führen dazu, daß das halbleiterbasierte Speichermedium 1 den gleichen Laufwerksbuchstaben wie zu den Ξinzelvorgängen 1 bis N-l aufweist. Die Einzelvorgänge N+2 bis N+M sind nicht näher beschriebene Einzelvorgänge die dem weiteren Startvorgang des ComputerSystems 3 betreffen. Figur 3 zeigt schematisch das halbleiterbasierte Speichermedium 1 mit den ersten bis dritten vorbestimmten Speicherbereichen 6, 7 und 8 wobei in dem ersten vorbestimmten Speicherbereich 6 die Master-Boot-Record-Datei 9 gespeichert ist.The subsequent individual process N + 1 relates to the loading of the driver software 5 for the bus system 2. The driver software 5 of the bus system 2 is loaded from the memory area of the computer system memory 4 and in a reverse order, the input into the computer system memory 4. This means that the device data and the driver software 5 are stored in the computer system 3, and are therefore read out of this memory area after the initialization of all devices connected to the bus system 2 and lead to the semiconductor-based storage medium 1 having the same drive letter as for the individual processes 1 to Nl. The individual processes N + 2 to N + M are individual processes (not described in more detail) which relate to the further starting process of the computer system 3. FIG. 3 schematically shows the semiconductor-based storage medium 1 with the first to third predetermined storage areas 6, 7 and 8, the master boot record file 9 being stored in the first predetermined storage area 6.
Zur Erzeugung einer Master-Boot-Record-Datei 9 auf dem halbleiterbasiertem Speichermedium 1, wie zum Beispiel einem USB Memory Stick, wird zum Beispiel bei Windows PE wie folgt vorgegangen. Ein MBR 9 (Master-Boot-Record-Datei) hat die Größe von einem Sektor eines Speichers, also 512 Bytes. Am Anfang, bei einem "Offset 0 hex" steht ein Boot Code als Verweis auf eine Boot-Record-Datei . Ab einem Offset 1BE hex befindet sich ein Eintrag für eine erste Partition des Laufwerks, dieser Eintrag ist 16 Bytes groß. Dadurch ergibt sich, dass jeder weitere Eintrag für Partitionen, die ebenfalls 16 Bytes groß sein müssen, an den Offsets ICE hex,..., bis 1EE hex stehen.In Windows PE, for example, the following procedure is used to generate a master boot record file 9 on the semiconductor-based storage medium 1, such as a USB memory stick. An MBR 9 (master boot record file) has the size of one sector of a memory, i.e. 512 bytes. At the beginning, with an "Offset 0 hex" there is a boot code as a reference to a boot record file. From an offset 1BE hex there is an entry for a first partition of the drive, this entry is 16 bytes in size. This means that each additional entry for partitions, which must also be 16 bytes in size, are at the offsets ICE hex, ..., up to 1EE hex.
An dem Offset 1FE hex, steht eine Kennung, die ausdrückt, dass es sich um einen gültigen MBR handelt (55AA hex) . Die ersten 2 Bytes des Partitionseintrages kennzeichnen, ob diese aktiv (80 hex) oder inaktiv (OOhex) ist. Die weiteren 14 Bytes bestimmen den Startpunkt, Endpunkt und den Typ (NTFS, FAT, etc.) der Partition in Abhängigkeit, von der Festplattengröße und Art. Bei Physikalischen Laufwerken wird hier der entsprechende Kopf, Cylinder und Sektor angegeben. Da z.B.: das halbleiterbasierte Speichermedium 1 wie zum Beispiel ein Memorybird keine Köpfe, Cylinder und Sektoren hat, werden diese durch bestimmte Eintragungen an dieser Stelle simuliert. Dies geschieht, indem als Kopf immer die Nummer 255 angegeben ist und der Rest auf die entsprechende Größe des halbleiterbasierten Speichermediums 1 (64, 128, 256 MB etc.) umgerechnet wird. Diese Umrechnung geschieht abhängig vom Filesystem, bei NTFS (New Technology File System von Microsoft) zum Beispiel beträgt die Clustergröße (kleinster adressierba- rer Bereich, in den die Festplatte aufgeteilt wird) 4Kb. Daraus ergeben sich dann die entsprechenden Werte für Cylinder und Sektoren. Nach diesen Vorgängen ist die Boot-Record-Datei für die jeweilige Partition mit dem Verweis auf eine gültige Bootloader-Datei (z.B.: bei Windows PE ist das die Datei NTLDR) erzeugbar. Die Partition, die aktiv gesetzt ist lädt dann über das BIOS ihre Boot-Record-Datei. Sind mehrere Partitionen vorhanden, kann immer nur eine aktiv gesetzt werden,At the offset 1FE hex there is an identifier that expresses that it is a valid MBR (55AA hex). The first 2 bytes of the partition entry indicate whether it is active (80 hex) or inactive (OOhex). The other 14 bytes determine the start point, end point and the type (NTFS, FAT, etc.) of the partition depending on the hard disk size and type. For physical drives, the corresponding head, cylinder and sector are specified here. Since, for example: the semiconductor-based storage medium 1, such as a memory bird, has no heads, cylinders and sectors, these are simulated by certain entries at this point. This is done by always specifying the number 255 as the header and converting the rest to the corresponding size of the semiconductor-based storage medium 1 (64, 128, 256 MB etc.). This conversion takes place depending on the file system. For NTFS (New Technology File System from Microsoft), for example, the cluster size (smallest addressable area into which the hard disk is divided) is 4Kb. This then gives the corresponding values for cylinders and sectors. After these operations is the boot record file for the respective partition with a reference to a valid boot loader file (e.g. for Windows PE this is the NTLDR file). The partition that is set to active then loads its boot record file via the BIOS. If there are several partitions, only one can be activated at a time.
Mit diesen Vorbedingungen ist das Computersystem 3 bis zum Initialisieren der Treibersoftware 5 des Bussystems 2 startbar.With these preconditions, the computer system 3 can be started until the driver software 5 of the bus system 2 is initialized.
Nach der Vorbereitung des halbleiterbasiertem Speichermediums 1 mit Master-Boot-Record-Datei 9 und Bootrecord, ist zum weiteren Vorgehen wichtig, daß dem Computersystem 3 zum Zeitpunkt des Ladens der Treibersoftware 5 des Bussystems 2, zum Beispiel des USB- Treibers, der entsprechende Gerätetreiber zur Verfügung steht. Gleichzeitig muss dem Computersystem 2 vermittelt werden, dass es sich bei dem Startlaufwerk um einen Wechseldatenträger handelt. Dies geschieht über eine gerätespezifische Kennung des halbleiterbasierten Speichermedi- ums 1, und ist zum Beispiel in der Firmware des halbleiterbasiertem Speichermediums 1 verankert, oder ist manuell über eine Software beim Initialisieren vorzunehmen. Hat das Computersystem 3, beziehungsweise das Betriebsystem des Computersystems, das halbleiterbasierte Speichermedium 1 als Wechsel- datenträger erkannt, muss man dem ComputerSystem 3 noch "gestatten" von diesem Datenträger zu starten. Dies muß deshalb geschehen, da nach Deklaration innerhalb der Soft- und Hardwareindustrie vereinbart ist, außer einem vorbestimmten Laufwerk, zum Beispiel USB-CD ROM, keinen USB Startvorgang zu gestatten. Die "Erlaubnis" zum Starten erfolgt über eineAfter the preparation of the semiconductor-based storage medium 1 with master boot record file 9 and boot record, it is important for the further procedure that the computer system 3 at the time of loading the driver software 5 of the bus system 2, for example the USB driver, the corresponding device driver is available. At the same time, the computer system 2 must be made aware that the start drive is a removable data carrier. This is done via a device-specific identifier of the semiconductor-based storage medium 1 and is, for example, anchored in the firmware of the semiconductor-based storage medium 1, or is to be carried out manually via software during initialization. If the computer system 3, or the operating system of the computer system, has recognized the semiconductor-based storage medium 1 as a removable data medium, the computer system 3 must still be "allowed" to start from this data medium. This must be done because, according to the declaration within the software and hardware industry, it is agreed that no USB start process other than a predetermined drive, for example USB-CD ROM. The "permission" to start is given by a
Software. Ist dies alles durchgeführt, bindet das Computersystem 3 beim Starten den Lauf erksbuchstaben „dynamisch" in eine Registrierungsdatei ein und veranlaßt beim initialisieren des Bussystems 2 und der Treibersoftware 5 die Informati- onen im Speicher über einen Stak zu verwalten. Anschließend wird dem Gerät ein fester Laufwerksbuchstabe zugeteilt, der als ein Root für sämtliche Systemzugriffe gespeichert ist. Vorgehend sind die ersten Schritte beschrieben, die erforderlich sind, damit das Computersystem die ersten Teilvorgänge, 0 bis N-l, eines Startvorgangs durchführt. Im Folgenden sind die Schritte beschrieben, die erforderlich sind, damit das Computersystem die weiteren Teilvorgänge, N bis N+M, durchführt und den Startvorgang erfolgreich abschließt .Software. If all of this has been carried out, the computer system 3 integrates the running letter "dynamically" into a registration file when it starts and causes the information in the memory to be managed via a stack when the bus system 2 and the driver software 5 are initialized. The device then becomes more fixed Drive letter assigned, which is stored as a root for all system access. The first steps that are necessary for the computer system to carry out the first sub-processes, 0 to N1, of a starting process are described above. The steps that are necessary for the computer system to carry out the further sub-processes, N to N + M, and to successfully complete the start-up process are described below.
Zur Erkennung aller an dem Bussystem 2 angeschlossenen Geräte wird das komplette Bussystem 2, zum Beispiel der USB-Bus, zurückgesetzt und alle Informationen der bis dahin angeschlossenen Geräte verworfen. Das heißt vorher zugeordnete Lauf- werksbuchstaben verlieren ihre Gültigkeit und werden neu bestimmt. Es erfolgt eine erneute Bestimmung aller Geräte die an das Bussystem 2 angeschlossen sind und eine Neubestimmung der Laufwerksbuchstaben . Jedes am Bussystem 2 angeschlossene Gerät wird am Bussystem 2 angemeldet, wobei die Treibersoftware 5 die entsprechenden Laufwerksbuchstaben zuordnet. Alle bis zu diesem Zeitpunkt durch das BIOS unterstützen Eigen- Schäften, beim Memorybird die Emulation des Interrupt 13 (Festplatten Emulation) , gehen verloren. Des weiteren werden die Laufwerksbuchstaben geändert (vorher Laufwerk C:, nachher nicht voraus bestimmbar, das hängt von der Anzahl und Art der angeschlossenen Geräte ab) . Dadurch ist das ComputerSystem 3 nicht mehr in der Lage, auf die zum abschließen des Bootvorgangs benötigten Treiber und Dateien zuzugreifen. Es stürzt mit einer Fehlermeldung, zum Beispiel einem Bluescreen, ab.In order to identify all devices connected to the bus system 2, the complete bus system 2, for example the USB bus, is reset and all information of the devices connected up to that point is discarded. This means that previously assigned drive letters lose their validity and are redetermined. All devices that are connected to bus system 2 are redetermined and the drive letters are redetermined. Each device connected to the bus system 2 is registered on the bus system 2, the driver software 5 assigning the corresponding drive letters. All properties supported by the BIOS up to this point in time, with Memorybird the emulation of Interrupt 13 (hard disk emulation) are lost. The drive letters are also changed (drive C: beforehand, cannot be determined afterwards, this depends on the number and type of connected devices). As a result, the computer system 3 is no longer able to access the drivers and files required to complete the boot process. It crashes with an error message, for example a blue screen.
Zur Vermeidung dessen, sind gemäß der vorliegenden Erfindung, vor dem Laden der Treibersoftware 5 des Bussystems 2, desTo avoid this, according to the present invention, before loading the driver software 5 of the bus system 2, the
USB- Treibers, alle Informationen, die notwendig sind in einem Bereich in den Computersystemspeicher 4 zu laden, wobei dieser dann für das Betriebsystem des ComputerSystem 3 zur Speicherung anderer Daten gesperrt ist. Dies erfolgt in fol- gender Reihenfolge: 1. Treiberdateien für das Gerät, 2. Gerä- tekennung und Gerätetyp, 3. USB-Treiber. Um diese Informationen auch in der richtigen Reihenfolge zur Verfügung zu stel- len, wird ein FILO-Stack verwendet. Ein FILO-Stack ist ein "First in Last out" Stapel, beim dem die Erste Information die auf den Stapel gelegt wurde, als letztes wieder rausgenommen wird. Zeitgleich wird durch eine Semaphore, eine prio- ritatsgesteuerte Warteschlange, sichergestellt, dass das Computersystem 3 die Informationen zum richtigen Zeitpunkt erhält . Um dies zu erreichen werden die vom Betriebsystem des Computersystems kommenden Anfragen abgelenkt in die Semaphore, wobei die höchste Priorität die Anfrage mit dem niedrigs- ten Interrupt erhält. Anschließend werden die Verweise des Computersystems 3, welche auf das Startlaufwerk, in diesem Fall das halbleiterbasierte Speichermedium 1, verweisen, auf den reservierten Bereich des Computersystemspeichers 4 geschrieben, um so alle bereitgestellten Informationen über die Semaphore abrufen zu können. Anschließend wird die Treibersoftware 5 des Bussytems 2, der USB-Treiber, der als letztes auf dem Stack liegt, aktiviert. Damit erfolgt dann die Initialisierung aller an des Bussystem 2 angeschlossenen Geräte durch die Treibersoftware 5 vollständig in dem reservierten Computersystemspeicher. Die Neuzuordnung von Laufwerksbuchstaben, geschieht zunächst in der Reihenfolge der physikalischen Laufwerke, von C:/ bis C+n:/, je nach Anzahl der Geräte im und am Computersystem 3, wobei dann einer realen Festplatte, zum Beispiel C:\, also "Physical-Drive 0" zugewiesen wird, und weiter nach Geräteart und Wichtigkeit "hochgezählt" wird. Die Geräte mit der niedrigsten Priorität erhalten die höchste Numerierung, bzw. LaufWerksbezeichnung. Die Geräteart wird über einen Devicedescriptor, eine Kennung, die das Gerät und den Gerätetyp identifiziert, bestimmt. Es werden nun bei dieser Neuzuweisung von Laufwerksbuchstaben, beziehungsweise der Neunumerierung, sämtliche Devicedescriptoren mit der auf dem Stack hinterlegten verglichen. Bei einer Gleichheit zwischen den reinitialisierten Geräten und dem im Stack hinterlegten, handelt es sich um das Gerät von dem ursprünglich das Computersystem 3 gestartet wurde. Anschließend wird dieses z.B.: Physical- Drive2 , oder Laufwerksbuchstabe D:\, in dem vorher reservierten Computersystemspeicher 4 gespeichert. Im Anschluß daran wird der benötigte Gerätetreiber des halbleiterbasierten Speichermediums 1 vom Stack geladen und aktiviert. Jetzt müssen die Pointer (Verweise) des Computersystems 2, welche auf den Bereich des Computersystemspeichers 4 zeigen, auf die im Computersystemspeicher 4 hinterlegten Informationen des "Physical-Drive" umgeleitet werden und die Kennung als Systemdatenträger gesetzt werden. Im Anschluß an diese Maßnahmen führt das Computersystem 3, bzw. dessen Betriebssystem selbständig die weiteren Teilstartvorgänge N+2 bis N+M weiter aus und führt die nötigen Änderungen, zum Beispiel in der Registrierungsdatei, automatisch durch. USB driver, all the information that is necessary to load in an area in the computer system memory 4, which is then blocked for the operating system of the computer system 3 for storing other data. This is done in the following order: 1. Driver files for the device, 2. Device identification and device type, 3. USB driver. In order to provide this information in the correct order len, a FILO stack is used. A FILO stack is a "first in last out" stack, in which the first information that was placed on the stack is taken out last. At the same time, a semaphore, a priority-controlled queue, ensures that the computer system 3 receives the information at the right time. In order to achieve this, the requests coming from the operating system of the computer system are deflected into the semaphore, the highest priority receiving the request with the lowest interrupt. Then the references of the computer system 3, which refer to the start drive, in this case the semiconductor-based storage medium 1, are written to the reserved area of the computer system memory 4, so that all the information provided can be called up via the semaphores. Then the driver software 5 of the bus system 2, the USB driver, which is the last one on the stack, is activated. The driver software 5 then completely initializes all the devices connected to the bus system 2 in the reserved computer system memory. The reassignment of drive letters is initially done in the order of the physical drives, from C: / to C + n: /, depending on the number of devices in and on the computer system 3, with a real hard disk, for example C: \, ie " Physical Drive 0 "is assigned, and" counting up "according to device type and importance. The devices with the lowest priority receive the highest numbering or drive designation. The device type is determined via a device descriptor, an identifier that identifies the device and the device type. With this reassignment of drive letters or the renumbering, all device descriptors are now compared with the one stored on the stack. If the reinitialized devices and those stored in the stack are identical, this is the device from which the computer system 3 was originally started. This is then stored, for example: PhysicalDrive2, or drive letter D: \, in the previously reserved computer system memory 4. in the Following this, the required device driver of the semiconductor-based storage medium 1 is loaded from the stack and activated. Now the pointers (references) of the computer system 2, which point to the area of the computer system memory 4, must be redirected to the information of the "physical drive" stored in the computer system memory 4 and the identifier set as a system data carrier. Following these measures, the computer system 3 or its operating system independently carries out the further partial starting processes N + 2 to N + M and automatically carries out the necessary changes, for example in the registration file.
BezugszeichenlisteLIST OF REFERENCE NUMBERS
1 Speichermedium1 storage medium
2 Bussystem 3 Computersystem2 bus system 3 computer system
4 Computersystemspeicher4 computer system memory
5 Treibersoftware5 driver software
6 Erster vorbestimmter Speicherbereich6 First predetermined memory area
7 Zweiter vorbestimmter Speicherbereich 8 Dritter vorbestimmter Speicherbereich7 second predetermined memory area 8 third predetermined memory area
9 Master-Boot-Record-Datei 9 Master boot record file

Claims

Patentansprüche claims
1. Verfahren zum Starten eines Computersystems (3) mit einem Speichermedium (1) , das mit dem Computersystem (3) über ein Bussystem (2) verbunden ist, und das Bussystem (2) eine Treibersoftware (5) zum Betrieb mit dem Computersystem (3) benötigt und der Startvorgang des Computersystems (3) in verschiedene, nacheinander ablaufende N+M EinzelVorgänge teilbar ist, wovon ein N+l Einzelvorgang das Laden der Treibersoft- wäre (5) für das Bussystem (2) ist, d a d u r c h g e k e n n z e i c h n e t, daß ein zeitlich vor dem Einzelvorgang des Ladens der Treibersoftware (5) gelegener Einzelvorgang N alle zum Betrieb des Speichermediums (1) notwendigen Informationen in einem vorbe- stimmten Speicherbereich des Computersystemspeichers (4) speichert.1. Method for starting a computer system (3) with a storage medium (1), which is connected to the computer system (3) via a bus system (2), and the bus system (2), driver software (5) for operation with the computer system ( 3) is required and the starting process of the computer system (3) can be divided into different, successively running N + M individual processes, of which an N + l single process is the loading of the driver software (5) for the bus system (2), characterized in that a Individual process N, located before the individual process of loading the driver software (5), stores all the information required for operating the storage medium (1) in a predetermined memory area of the computer system memory (4).
2. Verf hren nach Patentanspruch 1 , d a d u r c h g e k e n n z e i c h n e t, daß alle notwendigen Informationen in einer vorbestimmten Reihenfolge in einen vorbestimmten Speicherbereich des Computersystemspeichers (4) gespeichert werden.2. The method according to claim 1, so that all necessary information is stored in a predetermined order in a predetermined memory area of the computer system memory (4).
3. Verfahren nach einem der vorhergehenden Patentansprüche, d a d u r c h g e k e n n z e i c h n e t, daß zu einem vorbestimmten Zeitpunkt nach einer vorbestimmten Reihenfolge alle notwendigen Informationen aus dem vorbestimmten Bereich des Computersystemspeichers (4) ausgelesen werden.3. The method as claimed in one of the preceding claims, that all the necessary information is read out of the predetermined area of the computer system memory (4) at a predetermined time in a predetermined sequence.
4. Verfahren nach einem der vorhergehenden Patentansprüche, d a d u r c h g e k e n n z e i c h n e t, daß alle notwendigen Informationen zumindest umfassen4. The method according to any one of the preceding claims, d a d u r c h g e k e n n z e i c h n e t that at least include all the necessary information
- Treiberdaten für das Speichermedium (1) , - Daten des Speichermediums (1) für Typ und Kennung des Speichermediums (1) ,- Driver data for the storage medium (1), - Data of the storage medium (1) for type and identifier of the storage medium (1),
- Treiberdaten für das Bussystem (2) . - Driver data for the bus system (2).
5. Verfahren nach einem der vorhergehenden Patentansprüche, d a d u r c h g e k e n n z e i c h n e t, daß eine Master-Boot-Record-Datei (9) in einem ersten vorbestimmten Datenspeicherbereich (6) des Speichermediums (1) gespei- chert wird, wobei in einem zweiten vorbestimmten Speicherbereich (7) des Speichermediums (1) Daten gespeichert werden, das das Speichermedium (1) als Festplatte kennzeichnet und die Master-Boot-Record-Datei (9) eine Bootloader-Datei in einem dritten Speicherbereich (8) des Speichermediums (1) auf- ruft.5. The method according to any one of the preceding claims, characterized in that a master boot record file (9) in a first predetermined data storage area (6) of the storage medium (1) is stored, in a second predetermined storage area (7) of the storage medium (1), data are stored which identifies the storage medium (1) as a hard disk and the master boot record file (9) calls up a boot loader file in a third storage area (8) of the storage medium (1).
6. Verfahren nach einem der vorhergehenden Patentansprüche, d a d u r c h g e k e n n z e i c h n e t, daß das Speichermedium (1) trennbar mit dem Computersystem (3) über ein Bussystem (2) verbunden ist.6. The method according to any one of the preceding claims, that the storage medium (1) is separably connected to the computer system (3) via a bus system (2).
7. Verfahren nach einem der vorhergehenden Patentansprüche, d a du r c h g e k e n n z e i c h n e t, daß das Speichermedium (1) ein halbleiterbasiertes Speichermedium ist.7. The method according to any one of the preceding claims, that the storage medium (1) is a semiconductor-based storage medium.
8. Verfahren nach einem der vorhergehenden Patentansprüche, d a d u r c h g e k e n n z e i c h n e t, daß das Speichermedium (1) ein mobiles Speichermedium ist.8. The method according to any one of the preceding claims, d a d u r c h g e k e n n z e i c h n e t that the storage medium (1) is a mobile storage medium.
9. Verfahren nach einem der vorhergehenden Patentansprüche, d a d u r c h g e k e n n z e i c h n e t, daß das Speichermedium (1) ein externes Speichermedium ist.9. The method according to any one of the preceding claims, d a d u r c h g e k e n n z e i c h n e t that the storage medium (1) is an external storage medium.
10. Verfahren nach einem der vorhergehenden Patentansprüche, d a d u r c h g e k e n n z e i c h n e t, daß das halbleiterbasierte Speichermedium (2) zum Beispiel ein sogenanntes Memorystick, eine Chipkarte oder ähnliches ist.10. The method according to any one of the preceding claims, so that the semiconductor-based storage medium (2) is, for example, a so-called memory stick, a chip card or the like.
11. Verfahren nach einem der vorhergehenden Patentansprüche, d a d u r c h g e k e n n z e i c h n e t, daß das Bussystem (2) ein USB (Universal Serial Bus) , ein SCSI- Bus oder ähnliches ist. 11. The method according to any one of the preceding claims, characterized in that the bus system (2) is a USB (Universal Serial Bus), a SCSI bus or the like.
PCT/DE2004/001700 2003-08-18 2004-07-29 Method for starting a computer system by means of a storage medium WO2005017747A2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
EP04762545A EP1656613A2 (en) 2003-08-18 2004-07-29 Method for starting a computer system by means of a storage medium

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE2003137856 DE10337856A1 (en) 2003-08-18 2003-08-18 Method for starting a computer system with a storage medium
DE10337856.1 2003-08-18

Publications (2)

Publication Number Publication Date
WO2005017747A2 true WO2005017747A2 (en) 2005-02-24
WO2005017747A3 WO2005017747A3 (en) 2005-08-25

Family

ID=34177672

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/DE2004/001700 WO2005017747A2 (en) 2003-08-18 2004-07-29 Method for starting a computer system by means of a storage medium

Country Status (3)

Country Link
EP (1) EP1656613A2 (en)
DE (1) DE10337856A1 (en)
WO (1) WO2005017747A2 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030005278A1 (en) 2001-06-30 2003-01-02 Guoshun Deng Multifunction semiconductor storage device and a method for booting-up computer host

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5319751A (en) * 1991-12-27 1994-06-07 Intel Corporation Device driver configuration in a computer system
US6574588B1 (en) * 1998-09-23 2003-06-03 Microsoft Corporation Solid-state memory device that emulates a known storage device
US6718401B2 (en) * 2001-06-27 2004-04-06 Intel Corporation System and method for device support
US7299345B2 (en) * 2001-09-28 2007-11-20 Hewlett-Packard Development Company, L.P. Reserved ROM space for storage of operating system drivers

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030005278A1 (en) 2001-06-30 2003-01-02 Guoshun Deng Multifunction semiconductor storage device and a method for booting-up computer host

Also Published As

Publication number Publication date
DE10337856A1 (en) 2005-03-17
WO2005017747A3 (en) 2005-08-25
EP1656613A2 (en) 2006-05-17

Similar Documents

Publication Publication Date Title
DE69534867T2 (en) Method and system for providing protected device drivers
DE10047266B4 (en) Method and apparatus for booting a workstation from a server
DE10336877B3 (en) USB-based peripheral device and procedure for commissioning the USB-based peripheral device
DE69819686T2 (en) OBJECT AND METHOD FOR PROVIDING EFFICIENT MULTIPLE-USER ACCESS TO DISTRIBUTED OPERATING SYSTEM CORE CODE BY INSTANCING
DE10297281B4 (en) Method for elementary updating of a large number of files
DE112010003554B4 (en) Symmetrical direct migration of virtual machines
DE3808167C2 (en) Computer system with mode-independent addressing
DE60210434T2 (en) OS selector and disk space
DE102005022893B3 (en) Memory card e.g. multi media card, for data storage, has memory management unit providing open and safe interface to access memory blocks and protocol adapter accessing contents of card from host system connected with adapter by interface
DE19852250A1 (en) Automatic partitioning and control of access to e.g. hard disk memory
DE4408544C2 (en) Automatic installation
DE19847201A1 (en) Computer with random-access memory operated as logic drive
DE4429969A1 (en) Process for exchanging program packages in a multi-computer system and computer therefor
EP1067460A1 (en) Recording carrier with recoverable initial state base data and process for its production
DE10003268A1 (en) Computer system with drive code determination for CD ROM drive during set up, has central processor with I/O devices together with hard disc and CDROM drives
WO2005017747A2 (en) Method for starting a computer system by means of a storage medium
DE19946959B4 (en) Method for loading data for basic system routines
EP1033647B1 (en) Method for porting a software system to other hardware platforms
DE2343501B2 (en) Control circuit for at least one computer system with several registers intended for the implementation of EuWAusgabe programs
DE10260103A1 (en) Method and device for changing software in a control unit and corresponding control unit
EP2812788B1 (en) Method for deleting information, use of a method, computer program product and computer system
DE60107532T2 (en) Storage management method for configuring a computer storage medium with a virtual disk unit
DE10257861A1 (en) Storage system with a non-volatile storage element that overwrites directly without redundancy, and the associated writing method
DE102018001565A1 (en) Security element and method for access control to a security element
EP1708086A2 (en) Computer system and method for partitioning and allocating computing power within a computer system

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): BW GH GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 2004762545

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 2004762545

Country of ref document: EP

DPEN Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed from 20040101)