WO1999028804A2 - Verfahren und anordnung zum laden von daten für grundlegende systemroutinen eines datenverarbeitungssystems - Google Patents
Verfahren und anordnung zum laden von daten für grundlegende systemroutinen eines datenverarbeitungssystems Download PDFInfo
- Publication number
- WO1999028804A2 WO1999028804A2 PCT/DE1998/003485 DE9803485W WO9928804A2 WO 1999028804 A2 WO1999028804 A2 WO 1999028804A2 DE 9803485 W DE9803485 W DE 9803485W WO 9928804 A2 WO9928804 A2 WO 9928804A2
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- data
- bios
- flash
- deskflash
- application program
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/468—Specific access rights for resources, e.g. using capability register
Definitions
- the invention relates to a method and an arrangement for loading data according to the features specified in the preamble of claim 1 and claim 6, respectively.
- Data processing systems such as personal computers, usually only become fully functional after an operating system has been loaded. Even without an operating system, the data processing systems require basic functionality with which elementary operations can be carried out. Such elementary operations are, for example, routines for the input of characters via the keyboard and their output on the screen and the printer, a routine for loading the operating system for the main memory, and test routines for an automatically running self-test when the data processing system is switched on. These operations are also known as basic system routines.
- the data required to execute these system routines are stored in a non-volatile memory module in the data processing system, for example PROM, EPROM, FLASH, etc. , saved permanently.
- BIOS Basic Input Output System
- the basic system routines may have a significant influence on the way a data processing system works, it may required to use a revised version of the basic system routines in the data processing system. This can be done by replacing the PROM memory module. If, instead of a non-rewritable PROM, a rewritable memory block, for example EEPROM or a FLASH block, is available in the data processing system, then the basic system routines can be loaded into this memory block.
- a rewritable memory block for example EEPROM or a FLASH block
- the newer operating systems do not support loading a new version of the basic system routines into the non-volatile memory chip. Only programs of an application layer of the operating system are available to the user. Programs of a kernel layer of the operating system for which access to the essential functional elements of the data processing system is allowed, the user has no access. The data processing system must therefore always be rebooted for loading a new version for basic system routines. This bootstrapping must then be done using another operating system that at least supports loading the new version of the basic system routines. If such an operating system is loaded, security mechanisms of the operating system that is actually intended for the operation of the data processing system cannot take effect. This makes it possible to access other data stored within the data processing system. This data can also be changed in an inadmissible manner by so-called viruses so that malfunctions can occur during later regular operation.
- the present invention has for its object to provide a method and an arrangement for loading data for basic system routines of a data processing system, which largely excludes security risks when loading the data.
- the application program and the driver program which are in the application layer or. can be called up and run in the kernel layer
- the data processing system can be operated unchanged during the loading process with its intended operating system, which is protected against manipulation.
- An inadmissible circumvention of the safety technology of this operating system is closed. This effectively prevents unauthorized overwriting of the basic system routines.
- Authorization to call the application program can, for example, be assigned to users who also have administrator rights.
- the data processing system cannot be contaminated with viruses unless the operating system contains suitable protective mechanisms.
- the data processing system only needs to be provided with the data of the new version of the data for basic system routines. These are transferred from the application program to the driver program.
- the driver program which cannot be accessed from the application layer, transfers the data to the non-volatile memory.
- the application program takes over so-called location information from the file with the new data for basic system routines. On the basis of this location information, the application program breaks down the new data into packets, which are passed to the driver program provided with corresponding location information. This portionwise transfer Carrying the data affects the functioning of the operating system and other running application programs of the data processing system only insignificantly. Loading the new one
- Data of the basic system routines can thus also be made during the regular operation of the data processing system.
- the portion size can be adapted to the parameters of the non-volatile memory.
- the smallest packet corresponds to the smallest storage unit of the non-volatile memory, and the largest packet corresponds to the amount of data that can be transferred to the non-volatile memory in one load.
- the smallest amount of data is 1 byte and the largest amount of data is 64 KB.
- the driver program is adapted to the needs of the non-volatile memory.
- the non-volatile memories in particular the FLASH memories, are generally organized in sectors, with specific address areas being writable within individual memory sectors.
- the deletion can only be carried out for an entire sector. If the application program now provides the information that the transferred data are intended for sector i and should be written there in the addresses k to k + n, then the driver program first determines whether it has already deleted this sector in a previous process. If this is the case, then the deletion process can be omitted at the present time and only the data have to be written to the addresses k to k + n.
- n 1000, so that each time the data is transferred from the user program to the driver program, one KB is transferred. Such an amount of data affects the functionality of the operating system and the other running applications only very slightly.
- the application program can also take over the functionality of the driver program described above, after which it must be determined whether a sector had already been deleted in a previous process. In this In this case, the driver program would simply follow the corresponding instructions of the application program.
- the application program can be started by remote access.
- This functionality enables a system administrator in a computer network to run new basic system routines in a batch run using a software distribution tool on a plurality of data processing systems Install operations.
- the application program is called, the batch only has to transfer the necessary parameters, such as the authorization information and the new data.
- BIOS Basic system routines
- a non-volatile memory hereinafter referred to as flash
- the flash is a memory chip, the memory of which is divided into sectors with a size of 64 KB. Individual bytes can be addressed and written within the sectors. A deletion can only be carried out for an entire sector.
- the data processing system can use the BIOS stored in the flash to load an operating system into its working memory (not shown), as a result of which it is brought into an operational state.
- the operating system has two hierarchical layers AS, KS, from which different accesses to the data processing system are possible. are borrowed. Programs arranged therein can access hardware elements of the data processing system from a kernel layer KS.
- KS hierarchical layers
- Programs arranged therein can access hardware elements of the data processing system from a kernel layer KS.
- a driver program SniFlash is assigned, which is able to read data from the flash, delete data and write data into the flash.
- the second layer of the operating system, the application layer AS is assigned application programs which are not allowed to access parts of the data processing system which impair or immediately affect the security of the operating system.
- An application program that is arranged in this application layer AS is the application program DeskFlash, which is provided for loading a new BIOS version N_BIOS. Via the application program DeskFlash and the driver program SniFlash, data can be exchanged across the layer boundaries between application layer AS and kernel layer KS.
- the application program DeskFlash can be carried out directly by calling the user of the data processing system.
- the DeskFlash application program can be started by remote access using a software distribution tool.
- a system administrator who transmits parameters to selected data processing systems via a network that connects a plurality of data processing systems can start a batch run on the respective data processing systems. In this batch run, the parameter transfers required to start the DeskFlash application program are then made.
- the application program DeskFlash When the application program DeskFlash is started, it is checked whether the user who initiated the initialization of the application program DeskFlash belongs to the user group of the administrators. Only the group of administrators is authorized to start the application program DeskFlash. If such authorization does not exist and has not been verified using parameters as part of the alternative remote access, the execution of the DeskFlash application program is terminated. It is not possible for unauthorized persons to load a new BIOS version N_BIOS into the data processing system.
- the application program DeskFlash first opens a file OMF in which the new BIOS data N_BIOS are made available.
- the OMF file also contains information about which data processing system with which system boards and function blocks the new BIOS version N_BIOS is suitable for.
- the application program DeskFlash first reads out this data in the way designated by 1 in the figure.
- the application program DeskFlash asks the driver program SniFlash in a way designated by 4, from which the data relating to the system board and the modules located thereon, for which the previous BIOS could be used, are read from Flash. This process is carried out by the SniFlash driver program using the paths labeled 5 and 2.
- the driver program SniFlash transmits the read data in the way designated 3 to the application program DeskFlash.
- the data that is now available to the application program DeskFlash for the system board and the function blocks thereon of the BIOS previously available in the flash and the new BIOS data N_BIOS available in the OMF file are compared by the application program DeskFlash. If the identity is present, the existing BIOS version can be overwritten with the new BIOS version N_BIOS. Otherwise, the user is informed that there is a mismatch between the old BIOS and the new BIOS version N_BIOS, and then the application program DeskFlash is ended.
- the application program DeskFlash now reads the data of the OMF file on route 1 and evaluates it according to predefined rules. These rules determine how header information is to be interpreted.
- the OMF file contains this header information, from which it can be derived which contents of the OMF file are to be written to which locations in the flash. Taking this information into account, the application program DeskFlash performs a further breakdown into smaller packages, which can also contain location information - in which sector of the flash and to which address within this sector the data are to be written. The addition of this information to the packets which are transmitted via route 4 to the driver program SniFlash can only be dispensed with if it is ensured that no data loss can occur during serial transmission of the packets.
- the first packet of data to be written in a particular sector of the flash contains the name of the sector and the starting address from which the data of the present packet and the subsequent packets must be written.
- the data packets have a size of 1 KB, which means that the work of the operating system and other application programs running below it is only slightly impaired.
- the driver program SniFlash receives a data packet via route 4, it first interprets the location information assigned to it. If no location information is added, it writes the data of the packet via path 5 following the previously written data into the corresponding sector of the flash. If location information is available, it is first checked whether the sector of the flash designated in the location information has already been deleted and whether data from previous packets have already been entered there. If this is the case, the. Data of the current package to the in the location information designated positions, for example starting with the address k up to the address k + 1000. If, however, the sector of the flash specified in the location information is a sector that has not yet been deleted and therefore still contains data from the old BIOS, the driver program SniFlash causes the corresponding sector of the flash to be deleted. Only then does it write the data of the package to the addresses specified in the location information.
- the driver program SniFlash informs the application program DeskFlash via route 3 whether the writing of a data package to the flash was successful.
- the absence of such a message or the presence of a corresponding error message causes the application program DeskFlash to make another attempt to write the data by transmitting corresponding data packets again via route 4 to the driver program SniFlash.
- Additional measures such as user information, writing back already deleted data to the flash and the like are only initiated if the SniFlash driver program again issues an error message.
- the user is prompted by the application program DeskFlash to reboot the data processing system. If the user does not follow this suggestion, the data processing system can continue to be operated with the old BIOS until the next boot process.
Abstract
Description
Claims
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE59810185T DE59810185D1 (de) | 1997-11-27 | 1998-11-26 | Verfahren und anordnung zum laden von daten für grundlegende systemroutinen eines datenverarbeitungssystems |
AT98965590T ATE254307T1 (de) | 1997-11-27 | 1998-11-26 | Verfahren und anordnung zum laden von daten für grundlegende systemroutinen eines datenverarbeitungssystems |
EP98965590A EP1032871B1 (de) | 1997-11-27 | 1998-11-26 | Verfahren und anordnung zum laden von daten für grundlegende systemroutinen eines datenverarbeitungssystems |
US09/580,980 US6591366B1 (en) | 1997-11-27 | 2000-05-30 | Method and configuration for loading data for basic system routines of a data processing system |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19752615.2 | 1997-11-27 | ||
DE19752615A DE19752615C1 (de) | 1997-11-27 | 1997-11-27 | Verfahren und Anordnung zum Laden von Daten für grundlegende Systemroutinen eines Datenverarbeitungssystems |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/580,980 Continuation US6591366B1 (en) | 1997-11-27 | 2000-05-30 | Method and configuration for loading data for basic system routines of a data processing system |
Publications (2)
Publication Number | Publication Date |
---|---|
WO1999028804A2 true WO1999028804A2 (de) | 1999-06-10 |
WO1999028804A3 WO1999028804A3 (de) | 1999-07-29 |
Family
ID=7850005
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/DE1998/003485 WO1999028804A2 (de) | 1997-11-27 | 1998-11-26 | Verfahren und anordnung zum laden von daten für grundlegende systemroutinen eines datenverarbeitungssystems |
Country Status (5)
Country | Link |
---|---|
US (1) | US6591366B1 (de) |
EP (1) | EP1032871B1 (de) |
AT (1) | ATE254307T1 (de) |
DE (2) | DE19752615C1 (de) |
WO (1) | WO1999028804A2 (de) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6591366B1 (en) * | 1997-11-27 | 2003-07-08 | Fujitsu Siemens Computer Gmbh | Method and configuration for loading data for basic system routines of a data processing system |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE19822551A1 (de) * | 1998-05-20 | 1999-11-25 | Alcatel Sa | Prozessorgesteuertes System und Verfahren zum Betrieb eines prozessorgesteuerten Systems |
US6715074B1 (en) * | 1999-07-27 | 2004-03-30 | Hewlett-Packard Development Company, L.P. | Virus resistant and hardware independent method of flashing system bios |
US7137102B2 (en) * | 2000-08-09 | 2006-11-14 | Fujitsu Limited | Program development device utilizing component, program development method and medium |
JP2002251326A (ja) * | 2001-02-22 | 2002-09-06 | Hitachi Ltd | 耐タンパ計算機システム |
US7392541B2 (en) * | 2001-05-17 | 2008-06-24 | Vir2Us, Inc. | Computer system architecture and method providing operating-system independent virus-, hacker-, and cyber-terror-immune processing environments |
CN1940802A (zh) * | 2005-09-30 | 2007-04-04 | 鸿富锦精密工业(深圳)有限公司 | 解除基本输入/输出系统写保护的系统及方法 |
US9582262B2 (en) * | 2014-06-16 | 2017-02-28 | Wipro Limited | Systems and methods for installing upgraded software on electronic devices |
US11153325B1 (en) * | 2020-04-30 | 2021-10-19 | Splunk Inc. | Server-based restricted access storage |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2290890A (en) * | 1994-06-29 | 1996-01-10 | Mitsubishi Electric Corp | Updating a basic input/output system programme |
US5530858A (en) * | 1993-04-01 | 1996-06-25 | Intel Corporation | Method and apparatus for background processing for PCMCIA card services |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5444642A (en) * | 1991-05-07 | 1995-08-22 | General Signal Corporation | Computer system for monitoring events and which is capable of automatically configuring itself responsive to changes in system hardware |
EP0610677A3 (de) * | 1993-02-12 | 1995-08-02 | Ibm | In zwei Modi arbeitender Kommunikationsgerätetreiber. |
US5696897A (en) * | 1994-01-31 | 1997-12-09 | Sun Microsystems, Inc. | Method and apparatus for a multi-layer system quiescent suspend and resume operation |
US5632032A (en) * | 1994-02-07 | 1997-05-20 | International Business Machines Corporation | Cross address space thread control in a multithreaded environment |
US5640562A (en) * | 1995-02-27 | 1997-06-17 | Sun Microsystems, Inc. | Layering hardware support code on top of an existing operating system |
US5991822A (en) * | 1997-03-17 | 1999-11-23 | International Business Machines Corporation | System for modifying functions of static device driver using a registered driver extension extended dynamically by providing an entry point for the driver extension |
US5978912A (en) * | 1997-03-20 | 1999-11-02 | Phoenix Technologies Limited | Network enhanced BIOS enabling remote management of a computer without a functioning operating system |
WO1999014881A2 (en) * | 1997-09-16 | 1999-03-25 | Information Resource Engineering, Inc. | Cryptographic co-processor |
DE19752615C1 (de) * | 1997-11-27 | 1999-04-08 | Siemens Nixdorf Inf Syst | Verfahren und Anordnung zum Laden von Daten für grundlegende Systemroutinen eines Datenverarbeitungssystems |
US6173417B1 (en) * | 1998-04-30 | 2001-01-09 | Intel Corporation | Initializing and restarting operating systems |
US20010044904A1 (en) * | 1999-09-29 | 2001-11-22 | Berg Ryan J. | Secure remote kernel communication |
DE19946959B4 (de) * | 1999-09-30 | 2009-05-07 | Fujitsu Siemens Computers Gmbh | Verfahren zum Laden von Daten für grundlegende Systemroutinen |
US7178165B2 (en) * | 2001-08-20 | 2007-02-13 | Lenovo (Signapore) Pte Ltd. | Additional layer in operating system to protect system from hacking |
-
1997
- 1997-11-27 DE DE19752615A patent/DE19752615C1/de not_active Expired - Fee Related
-
1998
- 1998-11-26 AT AT98965590T patent/ATE254307T1/de not_active IP Right Cessation
- 1998-11-26 WO PCT/DE1998/003485 patent/WO1999028804A2/de active IP Right Grant
- 1998-11-26 DE DE59810185T patent/DE59810185D1/de not_active Expired - Lifetime
- 1998-11-26 EP EP98965590A patent/EP1032871B1/de not_active Expired - Lifetime
-
2000
- 2000-05-30 US US09/580,980 patent/US6591366B1/en not_active Expired - Lifetime
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5530858A (en) * | 1993-04-01 | 1996-06-25 | Intel Corporation | Method and apparatus for background processing for PCMCIA card services |
GB2290890A (en) * | 1994-06-29 | 1996-01-10 | Mitsubishi Electric Corp | Updating a basic input/output system programme |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6591366B1 (en) * | 1997-11-27 | 2003-07-08 | Fujitsu Siemens Computer Gmbh | Method and configuration for loading data for basic system routines of a data processing system |
Also Published As
Publication number | Publication date |
---|---|
EP1032871B1 (de) | 2003-11-12 |
US6591366B1 (en) | 2003-07-08 |
ATE254307T1 (de) | 2003-11-15 |
WO1999028804A3 (de) | 1999-07-29 |
DE59810185D1 (de) | 2003-12-18 |
EP1032871A2 (de) | 2000-09-06 |
DE19752615C1 (de) | 1999-04-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE4214184C2 (de) | Computersystem mit einem nicht-flüchtigen Speicher und Verfahren zu dessen Aktualisierung | |
DE2416609C2 (de) | Datenverarbeitungsanlage mit einer zentralen Verarbeitungseinheit und Multiprogrammierung mit mehreren Programmunterbrechungs-Prioritätsstufen | |
DE69914595T2 (de) | Geschütztes speichermedium für ein rechnersystem | |
DE10225664A1 (de) | System und Verfahren zum Prüfen von Systemabrufereignissen mit Systemabrufumhüllungen | |
DE112004001605T5 (de) | Computersystem, in welchem eine abgesicherte Ausführungsumgebung angewendet wird und in dem eine Speichersteuerung enthalten ist, die zum Löschen des Speichers ausgebildet ist | |
DE112009000612T5 (de) | Multi-Betriebssystem-Booteinrichtung (OS), Multi-OS-Boot-Programm, Aufzeichnungsmedium und Multi-OS-Bootverfahren | |
DE10308545A1 (de) | Verfahren und Vorrichtung zum Aktualisieren eines verteilten Programms | |
EP1032871B1 (de) | Verfahren und anordnung zum laden von daten für grundlegende systemroutinen eines datenverarbeitungssystems | |
EP1262856B1 (de) | Programmgesteuerte Einheit | |
DE10324337B4 (de) | Rechnersystem und zugehöriges Verfahren zum Durchführen eines Sicherheitsprogramms | |
EP1611517B1 (de) | Programmgesteuerte einheit | |
WO1996028795A1 (de) | Chipkarte mit geschütztem betriebssystem | |
DE102006060071B3 (de) | Ansteuerung eines Peripheriegerätes über eine CANopen-Schnittstelle | |
EP1611516A2 (de) | Programmgesteuerte einheit | |
EP1021791B1 (de) | Chipkarte mit speicher für anwendungsabhängig nachladbare programme | |
DE60212169T2 (de) | Laden von software | |
EP1628223B1 (de) | Schreiben von Daten in einen nichtflüchtigen Speicher eines tragbaren Datenträgers | |
DE19946959B4 (de) | Verfahren zum Laden von Daten für grundlegende Systemroutinen | |
EP1611515B1 (de) | Programmgesteuerte einheit | |
EP0966711B1 (de) | Mikrocomputer mit einer speicherverwaltungseinheit | |
EP1033647B1 (de) | Verfahren zum Übertragen eines Softwaresystems auf andere Hardwareplattformen | |
EP0556430B1 (de) | Verfahren zur Steuerung eines Peripheriesystems | |
EP2210210B1 (de) | Verfahren zum laden von initialisierungs- und/oder personalisierungsdaten auf einen tragbaren datenträger | |
EP1318451B1 (de) | Verfahren zum Ausführen eines Programms auf einem Computer | |
DE10315637A1 (de) | Programmgesteuerte Einheit |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AK | Designated states |
Kind code of ref document: A2 Designated state(s): US |
|
AL | Designated countries for regional patents |
Kind code of ref document: A2 Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE |
|
AK | Designated states |
Kind code of ref document: A3 Designated state(s): US |
|
AL | Designated countries for regional patents |
Kind code of ref document: A3 Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
DFPE | Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101) | ||
WWE | Wipo information: entry into national phase |
Ref document number: 1998965590 Country of ref document: EP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 09580980 Country of ref document: US |
|
WWP | Wipo information: published in national office |
Ref document number: 1998965590 Country of ref document: EP |
|
WWG | Wipo information: grant in national office |
Ref document number: 1998965590 Country of ref document: EP |