DE102012100378A1 - System und Verfahren für eine beschleunigte Boot-Leistung - Google Patents

System und Verfahren für eine beschleunigte Boot-Leistung Download PDF

Info

Publication number
DE102012100378A1
DE102012100378A1 DE201210100378 DE102012100378A DE102012100378A1 DE 102012100378 A1 DE102012100378 A1 DE 102012100378A1 DE 201210100378 DE201210100378 DE 201210100378 DE 102012100378 A DE102012100378 A DE 102012100378A DE 102012100378 A1 DE102012100378 A1 DE 102012100378A1
Authority
DE
Germany
Prior art keywords
hardware device
critical
operating system
user operating
computer
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
DE201210100378
Other languages
English (en)
Inventor
John Mese
Jonathan Knox
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Lenovo Singapore Pte Ltd
Original Assignee
Lenovo Singapore Pte Ltd
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 Lenovo Singapore Pte Ltd filed Critical Lenovo Singapore Pte Ltd
Publication of DE102012100378A1 publication Critical patent/DE102012100378A1/de
Pending legal-status Critical Current

Links

Images

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

Systeme, Verfahren und Produkte werden beschrieben, die eine beschleunigte Boot-Leistung bereitstellen. Ein Aspekt beinhaltet ein Initiieren eines Boot-Prozesses eines Nutzer-Betriebssystems eines Computersystems; ein Identifizieren eines unkritischen Hardwaregeräte-Sets für ein Starten gemäß den Nutzer-Betriebssystem; ein Ausschließen des unkritischen Hardwaregeräts; und ein Vervollständigen des Boot-Prozesses zum Bereitstellen des Nutzer-Betriebssystems, ohne ein ausgeschlossenes unkritisches Hardwaregerät zu starten. Weitere Ausführungsformen werden beschrieben.

Description

  • HINTERGRUND
  • Hochfahren ist der Prozess, der ein Nutzer-Betriebssystem (OS, operating system) wie beispielsweise eine Version von MICROSOFT WINDOWS OS lädt und bereitstellt, wenn der Nutzer ein Computersystem einschaltet. Die Boot-Sequenz ist das anfängliche Set von Arbeitsprozessen, die als Antwort auf das Einschalten des Stroms ausgeführt werden, welches das Nutzer-OS für die Nutzung vorbereitet, einschließlich eines Ladens des Nutzer-OS aus einem beständigen Speicher. In diesem Boot-Prozess wird ein Boot-Programm ausgeführt, um auf das Speichergerät bzw. die Speichergeräte zuzugreifen, von welchem bzw. von welchen das OS und zugehörige Daten geladen werden, und ein Teil des Boot-Prozesses beinhaltet ein Ausführen von Prüfungen, um zu ermitteln, welche Hardwaregeräte des Computersystems verfügbar sind.
  • Die Komplexität des Boot-Prozesses führt zu einer signifikanten Zeitdauer, die für ein Hochfahren derart, dass ein Nutzer das Nutzer-OS bedienen kann, benötigt wird. Ein übermäßig langer Boot-Prozess kann unerwünscht sein. Mehrere Computersysteme, die eine schnellere Boot-Erfahrung bereitstellen, sind verfügbar, aber diese sind üblicherweise nur geeignet, ein eingeschränktes OS zu starten, das für einfache Aufgaben, wie beispielsweise einen Internetzugang bereitzustellen, tauglich ist. Verschiedene Ansätze wurden unternommen, um den Boot-Prozess für ein vollständiges Nutzer-OS zu beschleunigen, einschließlich beispielsweise einem Vor-Abrufen und Cachen bestimmter Dateien.
  • KURZE ZUSAMMENFASSUNG
  • Zusammenfassend stellt ein Aspekt ein Verfahren bereit, aufweisend: Initiieren eines Boot-Prozesses eines Nutzer-Betriebssystems eines Computersystems; Identifizieren eines unkritischen Hardwaregeräte-Sets für ein Starten gemäß dem Nutzer-Betriebssystem; Ausschließen des unkritischen Hardwaregeräts; und Vervollständigen des Boot-Prozesses, um das Nutzer-Betriebssystem bereitzustellen, ohne ein ausgeschlossenes unkritisches Hardwaregerät zu starten.
  • Ein weiterer Aspekt stellt ein System bereit, aufweisend: einen oder mehrere Prozessoren; und einen Speicher in operativer Verbindung mit dem einen oder den mehreren Prozessoren; wobei der eine oder die mehreren Prozessoren in Antwort auf die Ausführung von dem einen oder den mehreren Prozessoren zugänglichen Computerprogramminstruktionen ausgebildet sind zum: Initiieren eines Boot-Prozesses eines Nutzer-Betriebssystems des Systems; Identifizieren eines unkritischen Hardwaregeräte-Sets für ein Starten gemäß dem Nutzer-Betriebssystem; Ausschließen des unkritischen Hardwaregeräts; und Vervollständigen des Boot-Prozesses, um das Nutzer-Betriebssystem bereitzustellen, ohne ein ausgeschlossenes unkritisches Hardwaregerät zu starten.
  • Ein weiterer Aspekt stellt ein Computerprogrammprodukt bereit, aufweisend: ein computerlesbares Speichermedium mit darauf ausgebildetem computerlesbaren Programmcode, wobei der computerlesbare Programmcode aufweist: computerlesbaren Programmcode ausgebildet zum Initiieren eines Boot-Prozesses eines Nutzer-Betriebssystems des Systems; computerlesbaren Programmcode ausgebildet zum Identifizieren eines unkritischen Hardwaregeräte-Sets für ein Starten gemäß dem Nutzer-Betriebssystem; computerlesbaren Programmcode ausgebildet zum Ausschließen des unkritischen Hardwaregeräts; und computerlesbaren Programmcode ausgebildet zum Vervollständigen des Boot-Prozesses, um das Nutzer-Betriebssystem bereitzustellen, ohne ein ausgeschlossenes unkritisches Hardwaregerät zu starten.
  • Das Vorangehende ist eine Zusammenfassung und kann daher Vereinfachungen, Verallgemeinerungen und Weglassungen von Details beinhalten; somit werden Fachleute in dem Gebiet erkennen, dass die Zusammenfassung lediglich veranschaulichend ist und nicht dazu gedacht ist, in irgend einer Weise beschränkend zu sein.
  • Für ein besseres Verständnis der Ausführungsformen zusammen mit anderen und weiteren Merkmalen und Vorteilen davon wird auf die folgende Beschreibung in Verbindung mit den beigefügten Figuren Bezug genommen. Der Anwendungsbereich der Erfindung wird in den angehängten Ansprüchen dargestellt.
  • KURZE BESCHREIBUNG DER MEHREREN ANSICHTEN DER FIGUREN
  • 1 zeigt eine beispielhafte Schaltung eines Computersystems.
  • 2 zeigt ein Beispiel eines Auswählens von Elementen für ein Deaktivieren/Ausschließen von dem Boot-Prozess.
  • 3 zeigt ein Beispiel eines vereinfachten Boot-Prozesses.
  • 4 zeigt ein Beispiel eines dynamischen Ermittelns von Elementen für ein Deaktivieren/Ausschließen von dem Boot-Prozess.
  • 5 zeigt ein Beispiel eines dynamischen Ermittelns von Elementen für ein Deaktivieren/Ausschließen von dem Boot-Prozess.
  • DETAILLIERTE BESCHREIBUNG
  • Es wird ohne weiteres verstanden, dass die Komponenten der Ausführungsformen, wie sie im Allgemeinen hierin beschrieben und in den Figuren gezeigt werden, in einer weiten Vielfalt unterschiedlicher Konfigurationen zusätzlich zu den beschriebenen beispielhaften Ausführungsformen angeordnet und ausgebildet sein können. Daher ist die folgende detailliertere Beschreibung der beispielhaften Ausführungsformen, wie sie in den Figuren dargestellt sind, nicht dazu bestimmt, den Anwendungsbereich der Ausführungsformen, wie er beansprucht wird, zu beschränken, sondern ist lediglich repräsentativ für beispielhafte Ausführungsformen.
  • Bezugnahme innerhalb dieser Beschreibung auf „eine Ausführungsform” (one embodiment) oder „eine Ausführungsform” (an embodiment) (oder ähnliches) bedeutet, dass ein spezielles Merkmal, eine spezielle Struktur oder eine spezielle Charakteristik, die in Verbindung mit der Ausführungsform beschrieben ist, in zumindest einer Ausführungsform beinhaltet ist. Daher muss das Auftreten der Begriffe „in einer Ausführungsform” (in one embodiment) oder „in einer Ausführungsform” (in an embodiment) oder ähnlichem an mehreren Stellen innerhalb dieser Beschreibung sich nicht sämtlich auf die gleiche Ausführungsform beziehen.
  • Weiterhin können die beschriebenen Merkmale, Strukturen und Charakteristiken in jeder geeigneten Art in einer oder mehreren Ausführungsformen kombiniert werden. In der folgenden Beschreibung werden zahlreiche spezifische Details bereitgestellt, um ein gründliches Verständnis der Ausführungsformen bereitzustellen. Ein Fachmann in dem relevanten Gebiet wird jedoch erkennen, dass Ausführungsformen ohne eines oder mehrerer der spezifischen Details oder mit anderen Verfahren, Komponenten, Materialien usw. ausgeführt werden können. An anderen Stellen werden bekannte Strukturen, Materialien oder Arbeitsabläufe nicht gezeigt oder detailliert beschrieben, um Durchblick hemmende Aspekte der Erfindung zu vermeiden.
  • Unter Verwendung eines einzelnen WINDOWS OS, das auf einem Computersystem installiert ist, als ein nicht-beschränkendes Beispiel, beinhaltet ein typischer Boot-Prozess, welcher mit einem Einschalten des Stroms für das Computersystem beginnt und endet, wenn der Nutzer sich an einem Anmelde-Dialogfenster anmelden kann, folgendes. Wenn das Computersystems eingeschaltet wird (Strom einschalten), kontrolliert das BIOS das Computersystem, um zunächst mehrere Boot-Arbeitsschritte auszuführen. Ein Set dieser Arbeitsschritte beinhaltet die Power On Self Test (POST) Auswertung, welche eine Menge an verfügbarem Speicher ermittelt und die in dem Computersystem verfügbaren Hardwaregeräte (wie beispielsweise eine Tastatur) prüft.
  • In einer legacy BIOS/MBR (master boot record) Konfiguration (berücksichtigend, dass andere Konfigurationen ebenfalls verwendet werden können, beispielsweise eine Unified Extensible Firmware Interface (UEFI)/GUID Partition Table (GPT) Konfiguration etc.), lädt, wenn das BIOS seine Überprüfung abgeschlossen hat, es das MBR-Programm in den Speicher. Wenn der MBR geladen ist, kontrolliert es den Boot-Prozess. Das MBR führt Code in dem ersten Sektor der Disk (MBR) aus, findet die aktive Partition und übergibt die Kontrolle an das Boot-Record der aktiven Partition (PBR, partition's boot record). Der PBR-Code initiiert das Nutzer-OS in einer Weise, die durch das Nutzer-OS festgelegt ist und lokalisiert spezifische Boot-Dateien zum Ausführen und Initialisieren des verbleibenden Nutzer-OS.
  • Ein Boot-Ladeprogramm ermittelt Komponenten (wie beispielsweise Computer-ID, Video, Tastatur, Kommunikationsports, parallele Ports, Maus/Zeigegerät(e)) und lädt typischerweise systemnahe Gerätetreiber (beispielsweise einen Festplatten-Gerätetreiber) in den Speicher. Andere Gerätetreiber werden dann während der Kernel-Initialisierung durch die systemnahen, bereits geladenen Gerätetreiber geladen und initialisiert und der Sitzungsmanager startet danach die Subsysteme und Dienste höherer Ordnung für das Nutzer-OS. Im Fall eines WINDOWS OS startet dann ein Subsystem, welches das Anmelde-Dialogfenster hervorbringt, womit der Boot-Prozess beendet wird.
  • Daher werden während dem Boot-Prozess typischerweise eine Vielzahl von Arbeitsabläufen ausgeführt, um das Nutzer-OS für eine Benutzung vorzubereiten. Dies neigt dazu, einen Engpass zu schaffen, indem die Systemressourcen (Prozessor(en), Speicher und/oder I/O) während des Boot-Prozesses belegt sind, so dass Arbeitsabläufe darauf warten müssen, vervollständigt zu werden. Einige Softwareelemente können in einen Cache vor-abgerufen werden, um einen schnelleren Zugriff auf die Softwareelemente für ein schnelleres Hochfahren bereitzustellen. Vor-Abrufen in einen Cache stellt eine gewisse Verbesserung dar, da es die Zeit reduziert, die benötigt wird, Softwareelemente abzurufen, indem vor-abgerufenen Softwareelemente leichter verfügbar sind, wenn sie gebraucht werden. Jedoch besitzt diese Technik lediglich begrenzten Einfluss, da sie sich nicht mit der Tatsache befasst, dass die Systemressourcen typischerweise während des Hochfahrens durch die große Menge an Komponenten, die gehandhabt werden müssen, wobei lediglich einige davon kritisch sind, überladen werden, was eine primäre Ursache verlängerter Boot-Zeit ist. Ein anderer Ansatz zielt auf ein Reduzieren der I/O Last durch ein Priorisieren bestimmter während des Hochfahrens zu ladender Softwareelemente. Dies neigt dazu, die Boot-Zeit in gewisser Weise zu reduzieren, befasst sich jedoch nicht vollständig mit der Engpass-Problematik, die angetroffenen wird, da typischerweise eine großen Zahl an Prozessen weiterhin die Systemressourcen besetzen. Dieser Ansatz ist zudem dahingehend limitiert, dass er lediglich Komponenten mit hohen I/O Kosten berücksichtigt. Daher ist eine weitere Verringerung der Boot-Zeit wünschenswert.
  • Eine Ausführungsform erleichtert ein schnelleres Hochfahren (verringerte Bootdauer) durch proaktivies Deaktivieren bestimmter, unkritischer Hardwaregerät(e) und bestimmter, unkritischer Softwareelement(e), so dass diese während des Boot-Prozesses nicht gehandhabt werden müssen. Daher tragen diese deaktivierten Hardwaregerät(e) und/oder Softwareelement(e) nicht zu dem Engpass der Systemressourcen zum Zeitpunkt des Hochfahrens bei. Eine Ausführungsform leistet, dass diese unkritischen Hardwaregerät(e) und/oder unkritischen Softwareelement(e) (welche Softwareelement(e) sein können, die unkritischen Hardwaregerät(en) zugeordnet sind, wie beispielsweise direkt zugeordnete Softwareelement(e) wie ein oder mehrere Gerätetreiber oder indirekt zugeordnete Softwareelement(e) wie Sicherheitsservices wie eine Firewall, die indirekt dem Laden eines Netzwerkgerätes zugeordnet ist, oder andere Softwareelement(e) beinhalten kann, die nicht zu unkritischen Hardwaregerät(en) zugeordnet sind, wie OS Komponenten und/oder proprietäre Software, beispielsweise Tastatur-Rauschunterdrückung, Bildschirmanzeige-Graphikmanagementsoftware für Lautstärke/Helligkeit etc.) danach aktiviert und verfügbar gemacht werden können, nachdem das Hochfahren beendet wurde. Zudem können die verzögerten Elemente (nach Vervollständigen des Hochfahrens) schneller gestartet werden, da die Ressourcen verfügbarer sind.
  • Damit ermöglicht eine Ausführungsform das Verringern der gesamten Boot-Zeit durch ein Verringern der Zahl an Gerät(en) und/oder Element(en), die in dem Boot-Prozess gehandhabt werden. Dies ermöglicht dem Computersystem, die Last eines Ladens und Initialisierens bestimmter Systemkomponenten auf einen späteren Zeitpunkt zu verschieben, wenn die Ressourcen nicht derartig belastet sind. Das Ergebnis ist, einem Nutzer ein hochgefahrenes System schneller bereitzustellen, als bisher realisiert wurde, während die Natur des Nutzer-OS nicht wesentlich beeinträchtigt wird, so dass dem Nutzer eine „vollständige” Nutzer-OS-Erfahrung geboten wird, wie von dem typischen Nutzer erwartet.
  • Die gezeigten beispielhaften Ausführungsformen werden am besten unter Bezugnahme auf die Figuren verstanden. Die folgende Beschreibung ist lediglich als beispielhaft gedacht und zeigt lediglich bestimmte beispielhafte Ausführungsformen.
  • Während zahlreiche andere Beschaltungen, Schaltungen oder Komponenten verwendet werden können, zeigt 1 ein Blockdiagramm eines Beispiels von Computersystem-Beschaltungen, -Schaltungen oder -Komponenten. Das in 1 gezeigte Beispiel kann Computersystemen wie der THINKPAD Serie von Personalcomputern entsprechen, die von Lenovo (US) Inc. of Morrisville, NC verkauft werden. Jedoch können, wie aus der Beschreibung hierin erkenntlich wird, Ausführungsformen andere Merkmale oder lediglich einige der Merkmale des in 1 gezeigten Beispiels beinhalten.
  • Das Beispiel von 1 beinhaltet ein so genanntes Chipset 110 (eine Gruppe von integrierten Schaltkreisen oder Chips, welche zusammenarbeiten, Chipsets) mit einer Architektur, die abhängig von dem Hersteller (beispielsweise INTEL, AMD, ARM, etc.) variieren kann. Die Architektur des Chipsets 110 beinhaltet eine Kern- und Speicher-Steuergruppe 120 und einen IO Controller-Hub 150, der Informationen (beispielsweise Daten, Signale, Befehle etc.) über ein Direct Management Interface (DMI) 142 oder einen Link-Controller 144 austauscht. In 1 ist das DMI 142 ein Chip-zu-Chip-Interface (auf welches manchmal Bezug genommen wird, ein Link zwischen einer „Northbridge” und einer „Southbridge” zu sein). Die Kern- und Speicher-Steuergruppe 120 beinhaltet einen oder mehrere Prozessoren 122 (beispielsweise Einzel- oder Mehrkern) und einen Speicher-Controller-Hub 126, die Informationen über einen Front Side Bus (FSB) 124 austauschen; es wird angemerkt, dass Komponenten der Gruppe 120 in einen Chip integriert sein können, der die konventionelle Architektur vom Typ „Northbridge” ersetzt.
  • In 1 koppelt der Speicher-Controller-Hub 126 mit Speicher 140 (beispielsweise, um eine Unterstützung für eine Art von RAM bereitzustellen, auf welchen als „Systemspeicher” oder „Speicher” Bezug genommen werden kann). Der Speicher-Controller-Hub 126 beinhaltet weiterhin ein LVDS Interface 132 für ein Anzeigegerät 192 (beispielsweise ein CRT, ein Flachbildschirm, ein Projektor etc.). Ein Block 138 beinhaltet einige Technologien, die mittels des LVDS Interface 132 unterstützt werden können (beispielsweise serielles digitales Video, HDMI/DVI, Anzeigeport). Der Speicher-Controller-Hub 126 beinhaltet zudem ein PCI-Express Interface (PCI-E) 134, das diskrete Graphiken 136 unterstützen kann.
  • In 1 beinhaltet der IO-Hub-Controller 150 ein SATA Interface 151 (beispielsweise für HDDs, SDDs, 180 etc.), ein PCI-E Interface 152 (beispielsweise für drahtlose Verbindungen 182), ein USB Interface 153 (beispielsweise für Eingabegeräte 184 wie beispielsweise Digitalisierer, Tastatur, Mäuse, Kameras, Telefone, Speicher, andere verbundene Geräte etc.), ein Netzwerk Interface 154 (beispielsweise LAN), ein GPIO Interface 155, ein LPC Interface 170 (für ASICs 171, ein TPM 172, ein super I/O 173, einen Firmware-Hub 174, BIOS Unterstützung 175 sowie mehrere Arten von Speicher 176 wie ROM 177, Flash 178 und NVRAM 179), ein Power-Management Interface 161, ein Taktgenerator Interface 162, ein Audio Interface 163 (beispielsweise für Lautsprecher 194), ein TCO Interface 164, ein Systemmanagement Bus Interface 165 und SPI Flash 166, welches BIOS 168 und Boot-Code 190 beinhalten kann. Der I/O-Hub-Controller 150 kann Gigabit Ethernet-Unterstützung beinhalten.
  • Das System kann nach Einschalten des Stroms konfiguriert sein, Boot-Code 190 für das BIOS 168, wie innerhalb des SPI Flash 166 gespeichert ist, auszuführen und verarbeitet danach Daten unter der Steuerung eines oder mehrerer Benutzer-Betriebssysteme (OSs) und Anwendungssoftware (beispielsweise gespeichert in Systemspeicher 140). Ein Nutzer-OS kann in jeglicher einer Mehrzahl von Orten gespeichert sein und beispielsweise gemäß Instruktionen des BIOS 168 aufgerufen werden. Wie hierin beschrieben wird, kann ein Gerät weniger oder mehr Merkmale als in dem System von 1 gezeigt beinhalten.
  • Mit Bezugnahme auf 2 deaktiviert eine Ausführungsform selektiv Hardwaregerät(e) und/oder Softwareelement(e), die aus Sichtweise eines Hochfahrens unkritisch sind. Dies ermöglicht ein Reduzieren der Boot-Zeit und ein Bereitstellen eines hochgefahrenen Nutzer-OS in einer geringeren Zeitspanne, verglichen mit konventionellen Implementierungen. Beispielsweise beginnt das System das Nutzer-OS in Antwort auf ein Einschalten des Stroms eines Computersystems hochzufahren 210. Eine Ausführungsform stellt einen Service bereit, der Hardwaregerät(e) und/oder Softwareelement(e) zum Deaktivieren auswählt, um schnelleres Hochfahren 220 bereitzustellen. Dieser Service kann zu verschiedenen Zeiten ablaufen, beispielsweise während des Boot-Prozesses selbst, als ein Hintergrundservice während das Computersystem läuft (unter Kontrolle des Nutzer-OS), kurz vor einem Herunterfahren/Ausschalten des Systems, etc. Sobald die Hardwaregerät(e) und/oder Softwareelement(e) ausgewählt wurden, deaktiviert 230 der Service diese, so dass sie von dem Boot-Prozess ausgeschlossen sind, wie beispielsweise durch Auswählen dieser und Einstellen dieser, vor einem Herunterfahren des Computersystems 240 zu deaktivieren.
  • Mit Bezugnahme auf 3 stellt eine Ausführungsform eine verringerte Boot-Zeit bereit, indem der Service bestimmte Hardwaregerät(e) zum Deaktivieren auswählt und einstellt und/oder bestimmte Softwareelement(e) auswählt und einstellt, von dem Boot-Prozess ausgeschlossen zu werden. Beispielsweise beginnt das Computersystem den Boot-Prozess in Antwort auf ein Einschalten des Stroms eines Computersystems wie normal 310. Während des Hochfahrens ermittelt das Computersystem verfügbare Hardwaregeräte und zugehörige Softwareelemente (beispielsweise Gerätetreiber), welche zu laden und initialisieren sind/zählt diese auf. Jedoch deaktiviert eine Ausführungsform bestimmte. Hardwaregerät(e) und/oder Softwareelement(e), so dass diese von dem Boot-Prozess 330 ausgeschlossen sind, statt alle Hardwaregerät(e) und/oder Softwareelement(e) zu laden und zu initialisieren, welche durch das Nutzer-OS voreingestellt sind, automatisch geladen und gestartet zu werden. Beispielsweise ist Audio nicht erforderlich, um ein System hochzufahren. Eine Ausführungsform kann daher Audiogerät(e) zusammen mit assoziierten OS-Softwarekomponenten bei einem Herunterfahren deaktivieren. Wenn das System hochgefahren wird, werden die betroffenen Audiokomponenten nicht gestartet, womit die Zahl an Aufgaben zum Komplettieren des Hochfahrens verringert wird. Diese können gestartet werden, sobald das System das Nutzer-OS hochgefahren hat. Daher wird der Boot-Prozess aus der Sicht der Ressourcenverwendung vereinfacht, da diese Hardwaregerät(e) und/oder Softwareelement(e) daran gehindert werden, während des Hochfahrens des Nutzer-OS zu starten und daher nicht geladen, initialisiert etc. werden müssen, womit Systemressourcen freigesetzt werden, um sich auf kritischere Boot-Komponenten zu fokussieren. Damit kann der Boot-Vorgang fortgesetzt werden 340, während weniger Komponenten gehandhabt werden und dieser damit schneller vervollständigt werden 350.
  • In der Implementierung des Ausschließens von Hardwaregerät(en) und/oder Softwareelement(en) kann es hilfreich sein, Abhängigkeiten zwischen den Hardwaregerät(en) und/oder Softwareelement(en) zu identifizieren, sowie jegliche Sequenzierung der Deaktivierungs- und/oder Aktivierungs-Abläufe zu berücksichtigen, in der Art und Weise, dass eine Ladedauer optimiert wird, während gewährleistet wird, dass die Nach-Boot-Funktionalität identisch oder ähnlich einem Computersystem ist, in welchem ein Ausschließen nicht implementiert wurde (ein System, das ein normales Nutzer-OS besitzt). Daher kann das Auswählen, welche Hardwaregerät(e) und/oder Softwareelement(e) deaktiviert/von dem Boot-Prozess ausgeschlossen werden, basierend auf einer Mehrzahl von Faktoren variieren.
  • In einem Beispiel stellt eine Ausführungsform einen Service bereit, der unkritische Boot-Komponenten für ein Deaktivieren/Ausschließen automatisch auswählt. Unkritische Komponenten werden definiert als diejenigen Komponenten, die für eine erfolgreiche Vervollständigung des Boot-Prozesses einer vollständigen Nutzer-OS-Erfahrung nicht erforderlich sind; wohingegen kritische Komponenten notwendig sind für ein vollständiges Hochfahren einer vollständigen Nutzer-OS-Erfahrung. Kritische Komponenten würden daher beispielsweise Geräte und/oder Software beinhalten, die für das Hochfahren des Nutzer-OS erforderlich sind, wie beispielsweise ein Festplattengerät und zugehörige Treiber. Kritische Komponenten können weiter verfeinert werden, Merkmale zu beinhalten, die, obwohl nicht notwendigerweise für ein Laden des Nutzer-OS erforderlich, für einen einwandfreien Betrieb des Computersystems benötigt werden, wie beispielsweise ein Aktivieren von Video für visuelle Anzeigefähigkeiten und/oder ein Aktivieren eines biometrischen Geräts für biometrischen Input/Anmeldung während des Boot-Prozesses. Damit werden die kritischen Komponenten benötigt, aus der Sicht des Nutzers ein vollständiges Nutzer-OS bereitzustellen.
  • Unkritische Komponenten beinhalten diejenigen Komponenten, die ermöglichen unkritische Merkmale des Computersystems bei abgeschlossenem Hochfahren zu aktivieren. Einige nicht einschränkende Beispiele beinhalten Audiogeräte und zugehörige Treiber, externe Geräte (Geräte, die mit dem USB verbunden sind, wie eine eingebaute Kamera) und zugehörige Treiber, Netzwerkgeräte (wie Ethernet/WiFi-Komponenten) und zugehörige Treiber, biometrische Geräte und zugehörige Treiber, Firewalls und andere Sicherheitssoftware, proprietäre Software etc. Die Kategorisierung von Hardwaregerät(en) und/oder Softwareelement(en) als kritisch oder unkritisch in dem hierin verwendeten Kontext kann vorbestimmt sein, kann variieren und/oder kann dynamisch ermittelt werden.
  • Unter Bezugnahme auf 4 ist beispielhaft eine Ausführungsform fähig dynamisch zu ermitteln, ob ein Hardwaregerät und/oder Softwareelement kritisch oder unkritisch in einem gegebenen Kontext ist. Wenn das System den Boot-Prozess 410 beginnt, kann der Servicesteuermanager oder eine Komponente des Nutzer-OS Geräte und/oder Softwareelement(e) ermitteln 420, welche für einen automatischen Start durch das Nutzer-OS eingestellt sind, wie es üblich ist. In Antwort auf dieses Aufzählen von Gerät(en)/Element(en) kann eine Ausführungsform auf einen Nicht-Verzögerungsfaktor hin überprüfen 340, beispielsweise ein Sicherheits-Token, das mit einem Nutzer-Account des Systems assoziiert ist (wie beispielsweise ein Passwort oder ein biometrischer Geräteschutz). Ein Nicht-Verzögerungsfaktor kann zudem ein Ermitteln beinhalten, dass ein Einschließen (eines Handhabens) eines spezifischen Gerätes/Softwareelements in dem Boot-Prozess die Boot-Zeit nicht verzögern würde (das heißt, es gibt genügend verfügbare Ressourcen zum Handhaben des Gerätes/Softwareelements während des Hochfahrens). Falls ein Nicht-Verzögerungsfaktor identifiziert wird 430, beispielsweise ein Gerät, das zu einem Sicherheits-Token gehört, kann dieses Gerät in diesem Fall als kritisch angesehen werden, obwohl es typischerweise unkritisch ist, und eingeschaltet werden 450.
  • Beispielsweise, falls ein Nutzer ein Sicherheits-Token für das Computersystem eingerichtet hat, das einen biometrischen Input durch einen Fingerabdruckleser erfordert, ermittelt eine Ausführungsform dies und aktiviert den Fingerabdruckleser und zugehörige Softwareelemente, so dass diese während des Boot-Prozesses geladen und initialisiert werden können, auch wenn der Service diese normalerweise als unkritisch kategorisieren kann. In Antwort auf ein derartiges Überprüfen 440 kann der Boot-Prozess fortgeführt werden, ohne andere unkritische Hardwaregerät(e) und/oder Softwareelemente zu handhaben, wie hierin beschrieben, und der Boot-Prozess kann vervollständigt werden 470. Damit sind die dynamisch identifizierten kritischen Geräte/Softwareelemente (Fingerabdruckleser, ein Softwareelement/Gerät, das das Hochfahren nicht verzögert, etc.) bei Vervollständigung des Boot-Prozesses verfügbar gemacht, auch wenn der Service das Geräte/Element typischerweise (standardmäßig) einstellen kann zu deaktivieren, da es unkritisch ist.
  • Unter Bezugnahme auf 5 kann das Ermitteln der Hardwaregerät(e) und/oder Softwareelement(e) als unkritisch/kritisch aufgeführt zu werden unter Verwendung von Intelligenz oder mittels Nutzerauswahl bestimmt werden. Beispielsweise kann, während das Computersystem läuft 510, der Service Informationen bezüglich durch einen speziellen Nutzer ungenutzte oder selten genutzte Hardwaregerät(e) oder Softwareelement(e) sammeln, so dass diese Hardwaregerät(e)/Softwareelement(e) ermittelt werden können 520. Sobald ermittelt, kann der Service diese einstellen, deaktiviert/von dem Boot-Prozess ausgeschlossen zu sein 530, so dass bei einem Herunterfahren 540 diese als unkritisch ausgewählt werden und damit nicht gestartet/geladen/initialisiert werden, wenn das System wieder hochgefahren wird. Dies wird die Boot-Zeit durch das Vermeiden eines unnötigen Handhabens derartiger selten genutzter/ungenutzter Komponenten während des Boot-Prozesses verringern.
  • Es wird verstanden, dass Ausführungsformen in einem oder mehreren Computergeräten implementiert werden können, welche entsprechend konfiguriert sind, Programminstruktionen auszuführen, die mit der Funktionalität der Ausführungsformen wie hierin beschrieben konsistent sind. In dieser Hinsicht beschreibt 1 ein nicht einschränkendes Beispiel eines derartigen Computergeräts. Ausführungsformen können unter Verwendung einer Vielzahl von Computersystemen wie beispielsweise Tischcomputern, Arbeitsstationen, Servern, Schiefertafeln, Tablets und ähnlichem implementiert werden.
  • Wie von einem Fachmann erkannt wird, können zahlreiche Aspekte als ein System, Verfahren oder Computerprogrammprodukt ausgebildet sein. Entsprechend können Aspekte die Form einer vollständigen Hardware-Ausführungsform oder einer Ausführungsform, die Software- und/oder Hardware-Aspekte beinhalten, annehmen, auf welche sämtlich generell hierin als ein „Netzwerk” (circuit), „Modul” oder „System” Bezug genommen wird. Weiterhin können Aspekte die Form eines Computerprogrammprodukts annehmen, das in einem computerlesbaren Medium oder mehreren computerlesbaren Medien ausgebildet ist, das bzw. die computerlesbaren Programmcode darin ausgebildet haben.
  • Jede Kombination von einem nicht-Signal computerlesbaren Medium oder mehreren nicht-Signal computerlesbaren Medien kann verwendet werden. Ein nicht-Signal computerlesbares Medium kann ein computerlesbares Speicher-Medium sein. Ein computerlesbares Speicher-Medium kann zum Beispiel ein elektronisches, magnetisches, optisches, elektromagnetisches, Infrarot- oder Halbleiter-System, -Apparat oder -Vorrichtung oder jede geeignete Kombination der vorgenannten sein. Spezifischere Beispiele eines computerlesbaren Speicher-Mediums würden folgendes beinhalten: eine tragbare Computer-Diskette, eine Festplatte, ein Random Access Memory (RAM), ein Read-only Memory (ROM), ein Erasable Programmable Read-only Memory (EPROM oder Flash Speicher), eine Glasfaser, ein Portable Compact Disc Read-only Memory (CD-ROM), eine optische Speichervorrichtung, eine magnetische Speichervorrichtung oder jede geeignete Kombination der vorgenannten.
  • Programmcode, der auf einem computerlesbaren Medium ausgebildet ist, kann unter Verwendung jedes geeigneten Mediums übermittelt werden, einschließlich, aber nicht beschränkt auf, drahtlos, drahtgebunden, Glasfaserkabel, RF usw. oder jede geeignet Kombination der vorgenannten.
  • Computerprogrammcode zum Ausführen von Arbeitsabläufen kann in jeder Kombination einer oder mehrerer Programmiersprachen geschrieben sein. Der Programm-Code kann vollständig auf einem einzigen Gerät, teilweise auf einem einzigen Gerät, als ein unabhängiges Software-Paket, teilweise auf einem einzigen Gerät und teilweise auf einem anderen Gerät oder vollständig auf dem anderen Gerät ausgeführt werden. In einigen Fällen können die Geräte durch jede Art von Netzwerk verbunden sein, einschließlich eines Local Area Network (LAN) oder eines Wide Area Network (WAN), oder die Verbindung kann durch andere Geräte ausgeführt werden (beispielsweise über das Internet unter Verwendung eines Internet Service Providers) oder durch eine festverdrahtete Verbindung, wie beispielsweise über eine USB-Verbindung.
  • Computerlesbare Programm-Instruktionen können einem Prozessor eines Mehrzweck-Computers, eines Spezialzweck-Computers oder einer anderen programmierbaren Datenverarbeitungs-Vorrichtung bereitgestellt werden, um eine Maschine zu bilden, derart, dass die Instruktionen, die mittels des Prozessors des Computers oder der andern programmierbaren Datenverarbeitungs-Vorrichtung ausgeführt werden, die spezifizierten Funktionen/Handlungen implementieren.
  • Die computerlesbaren Programm-Instruktionen können auch in einem computerlesbaren Medium gespeichert sein, welches einen Computer oder eine andere programmierbare Datenverarbeitungs-Vorrichtung oder andere Vorrichtung(en) anleiten kann, in einer speziellen Art zu arbeiten, derart, dass die Instruktionen, die in dem computerlesbaren Medium gespeichert sind, einen Fertigungsgegenstand bilden, einschließlich Instruktionen, welche die spezifizierte Funktion/Handlung implementieren.
  • Die computerlesbaren Programm-Instruktionen können auch auf einen Computer, eine andere programmierbare Datenverarbeitungs-Vorrichtung oder andere Vorrichtungen geladen werden, um eine Serie von Arbeitsschritten, die auf dem Computer, der anderen programmierbaren Vorrichtung oder der anderen Vorrichtung(en) ausgeführt werden, auszulösen, um einen computer-implementierten Prozess zu bilden, derart, dass die Instruktionen, die auf dem Computer oder der anderen programmierbaren Vorrichtung ausgeführt werden, Verfahren zum Implementieren der spezifizierten Funktionen/Handlungen bereitstellen.
  • Diese Offenbarung wurde zum Zweck der Veranschaulichung und Beschreibung gezeigt, ist jedoch nicht dazu beabsichtigt, erschöpfend oder beschränkend zu sein. Zahlreiche Modifikationen und Variationen werden Fachleuten in dem Gebiet ersichtlich sein. Die beispielhaften Ausführungsformen wurden ausgewählt und beschrieben, um Prinzipien und praktische Anwendungen zu erklären und anderen Fachleuten in dem Gebiet zu ermöglichen, die Offenbarung für zahlreiche Ausführungsformen mit zahlreichen Modifikationen, welche für die spezielle vorgesehene Verwendung geeignet sind, zu verstehen.
  • Dabei wird verstanden, dass, obwohl veranschaulichende beispielhafte Ausführungsformen hierin mit Bezug auf die beigefügten Figuren beschrieben wurden, diese Beschreibung nicht beschränkend ist und dass zahlreiche andere Änderungen und Modifikationen davon geprägt sind, wie von einem Fachmann in dem Gebiet verstanden wird, ohne den Anwendungsbereich oder Geist der Offenbarung zu verlassen.

Claims (23)

  1. Verfahren aufweisend: – Initiieren eines Boot-Prozesses eines Nutzer-Betriebssystems eines Computersystems; – Identifizieren eines unkritischen Hardwaregeräte-Sets für ein Starten gemäß dem Nutzer-Betriebssystem; – Ausschließen des unkritischen Hardwaregeräts; und – Vervollständigen des Boot-Prozesses, um das Nutzer-Betriebssystem bereitzustellen, ohne ein ausgeschlossenes unkritisches Hardwaregerät zu starten.
  2. Verfahren nach Anspruch 1, weiterhin aufweisend: – Identifizieren eines unkritischen Softwareelemente-Sets für ein Starten gemäß dem Nutzer-Betriebssystem; und – Ausschließen des unkritischen Softwareelemente-Sets für ein Starten gemäß dem Nutzer-Betriebssystem.
  3. Verfahren nach Anspruch 2, weiterhin aufweisend: Starten eines oder mehrerer eines unkritischen Hardwaregeräte-Sets für ein Starten gemäß dem Nutzer-Betriebssystem und eines unkritischen Softwareelemente-Sets für ein Starten gemäß dem Nutzer-Betriebssystem in Antwort auf das Vervollständigen des Boot-Prozesses.
  4. Verfahren nach Anspruch 1, wobei das Ausschließen weiterhin ein Nicht-Laden eines oder mehrerer Softwareelemente beinhaltet, die zu dem ausgeschlossenen Hardwaregerät zugehörig sind.
  5. Verfahren nach Anspruch 1, wobei das Ausschließen eines unkritischen Hardwaregerätes ein Setzen des unkritischen Hardwaregerätes in einen deaktivierten Zustand beinhaltet.
  6. Verfahren nach Anspruch 5, wobei das unkritische Hardwaregerät eines oder mehrerer eines biometrischen Geräts, eines Audiogeräts, eines mit einem USB des Computersystems verbundenen Geräts und eines Netzwerkverbindungsgeräts beinhaltet.
  7. Verfahren nach Anspruch 2, wobei das unkritische Softwareelement direkt oder indirekt dem unkritischen Hardwaregerät zugehörig ist.
  8. Verfahren nach Anspruch 1, wobei das Ausschließen nahe einem Herunterfahren des Nutzer-Betriebssystems ausgeführt wird.
  9. Verfahren nach Anspruch 2, wobei das Identifizieren weiterhin ein dynamisches Identifizieren eines oder mehrerer eines unkritischen Hardwaregeräts und eines unkritischen Softwareelements beinhaltet.
  10. Verfahren nach Anspruch 9, wobei das dynamische Identifizieren weiterhin ein Überprüfen auf ein mit einem Nutzer-Account des Computersystems assoziiertes Sicherheits-Token hin beinhaltet.
  11. Verfahren nach Anspruch 10, weiterhin aufweisend ein Starten eines mit dem Sicherheits-Token assoziierten Hardwaregeräts in Antwort auf ein Identifizieren eines mit einem Nutzer-Account des Computersystems assoziierten Sicherheits-Token.
  12. System aufweisend: – ein oder mehrere Prozessoren; und – einen Speicher in operativer Verbindung mit dem einen oder den mehreren Prozessoren; wobei der eine oder die mehreren Prozessoren in Antwort auf die Ausführung von dem einen oder den mehreren Prozessoren zugänglichen Computerprogramminstruktionen ausgebildet sind zum: – Initiieren eines Boot-Prozesses eines Nutzer-Betriebssystems eines Computersystems; – Identifizieren eines unkritischen Hardwaregeräte-Sets für ein Starten gemäß dem Nutzer-Betriebssystem; – Ausschließen des unkritischen Hardwaregeräts; und – Vervollständigen des Boot-Prozesses, um das Nutzer-Betriebssystem bereitzustellen, ohne ein ausgeschlossenes unkritisches Hardwaregerät zu starten.
  13. System nach Anspruch 12, wobei der eine oder die mehreren Prozessoren weiterhin ausgebildet sind zum: – Identifizieren eines unkritischen Softwareelemente-Sets für ein Starten gemäß dem Nutzer-Betriebssystem; und – Ausschließen des unkritischen Softwareelemente-Sets für ein Starten gemäß dem Nutzer-Betriebssystem.
  14. System nach Anspruch 13, wobei der eine oder die mehreren Prozessoren weiterhin ausgebildet sind zum: Starten eines oder mehrerer eines unkritischen Hardwaregeräte-Sets für ein Starten gemäß dem Nutzer-Betriebssystem und eines unkritischen Softwareelemente-Sets für ein Starten gemäß dem Nutzer-Betriebssystem in Antwort auf das Vervollständigen des Boot-Prozesses.
  15. System nach Anspruch 12, wobei das Ausschließen weiterhin ein Nicht-Laden eines oder mehrerer Softwareelemente beinhaltet, die zu dem ausgeschlossenen Hardwaregerät zugehörig sind.
  16. System nach Anspruch 12, wobei das Ausschließen eines unkritischen Hardwaregerätes ein Setzen des unkritischen Hardwaregerätes in einen deaktivierten Zustand beinhaltet.
  17. System nach Anspruch 16, wobei das unkritische Hardwaregerät eines oder mehrerer eines biometrischen Geräts, eines Audiogeräts, eines mit einem USB des Computersystems verbundenen Geräts und eines Netzwerkverbindungsgeräts beinhaltet.
  18. System nach Anspruch 13, wobei das unkritische Softwareelement direkt oder indirekt dem unkritischen Hardwaregerät zugehörig ist.
  19. System nach Anspruch 12, wobei das Ausschließen nahe einem Herunterfahren des Nutzer-Betriebssystems ausgeführt wird.
  20. System nach Anspruch 13, wobei das Identifizieren weiterhin ein dynamisches Identifizieren eines oder mehrerer eines unkritischen Hardwaregeräts und eines unkritischen Softwareelements beinhaltet.
  21. System nach Anspruch 20, wobei das dynamische Identifizieren weiterhin ein Überprüfen auf ein mit einem Nutzer-Account des Computersystems assoziiertes Sicherheits-Token hin beinhaltet.
  22. System nach Anspruch 21, wobei der eine oder die mehreren Prozessoren weiterhin ausgebildet sind zum: Starten eines mit dem Sicherheits-Token assoziierten Hardwaregeräts in Antwort auf ein Identifizieren eines mit einem Nutzer-Account des Computersystems assoziierten Sicherheits-Token.
  23. Computerprogrammprodukt aufweisend: – ein computerlesbares Speichermedium mit darauf ausgebildetem computerlesbaren Programmcode, wobei der computerlesbare Programmcode aufweist: – computerlesbaren Programmcode, ausgebildet zum Initiieren eines Boot-Prozesses eines Nutzer-Betriebssystems des Systems; – computerlesbaren Programmcode, ausgebildet zum Identifizieren eines unkritischen Hardwaregeräte-Sets für ein Starten gemäß dem Nutzer-Betriebssystem; – computerlesbaren Programmcode, ausgebildet zum Ausschließen des unkritischen Hardwaregeräts; und – computerlesbaren Programmcode, ausgebildet zum Vervollständigen des Boot-Prozesses, um das Nutzer-Betriebssystem bereitzustellen, ohne ein ausgeschlossenes unkritisches Hardwaregerät zu starten.
DE201210100378 2011-04-29 2012-01-18 System und Verfahren für eine beschleunigte Boot-Leistung Pending DE102012100378A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/097,911 US9003175B2 (en) 2011-04-29 2011-04-29 System and method for accelerated boot performance
USUS,13/097,911 2011-04-29

Publications (1)

Publication Number Publication Date
DE102012100378A1 true DE102012100378A1 (de) 2012-10-31

Family

ID=47007834

Family Applications (1)

Application Number Title Priority Date Filing Date
DE201210100378 Pending DE102012100378A1 (de) 2011-04-29 2012-01-18 System und Verfahren für eine beschleunigte Boot-Leistung

Country Status (4)

Country Link
US (2) US9003175B2 (de)
JP (2) JP2012234539A (de)
CN (1) CN102779050B (de)
DE (1) DE102012100378A1 (de)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9003175B2 (en) * 2011-04-29 2015-04-07 Lenovo (Singapore) Pte. Ltd. System and method for accelerated boot performance
US8601250B2 (en) * 2011-05-16 2013-12-03 International Business Machines Corporation Control over loading of device drivers for an individual instance of a PCI device
US20130262912A1 (en) * 2012-04-02 2013-10-03 International Business Machines Corporation Managing hardware configuration of a computer node
US9342695B2 (en) 2012-10-02 2016-05-17 Mordecai Barkan Secured automated or semi-automated systems
US11188652B2 (en) * 2012-10-02 2021-11-30 Mordecai Barkan Access management and credential protection
US9361122B2 (en) * 2013-02-08 2016-06-07 Htc Corporation Method and electronic device of file system prefetching and boot-up method
JP6331505B2 (ja) * 2014-03-11 2018-05-30 日本電気株式会社 起動制御装置、起動制御方法、及び起動制御プログラム
KR102388840B1 (ko) * 2014-07-10 2022-04-20 하만인터내셔날인더스트리스인코포레이티드 운영 체제 스타트업 가속
CN106537335B (zh) * 2014-07-10 2021-06-22 哈曼国际工业有限公司 操作系统启动加速
EP3796159B1 (de) * 2014-07-10 2022-08-31 Harman International Industries, Inc. Beschleunigung des hochfahrens eines betriebssystems
US9672047B1 (en) * 2014-10-31 2017-06-06 American Megatrends, Inc. Systems and methods for accessing a bootable partition on a serial peripheral interface device
JP6455132B2 (ja) 2014-12-22 2019-01-23 富士通株式会社 情報処理装置,処理方法及びプログラム
CN105760201B (zh) * 2016-02-29 2019-05-28 华为技术有限公司 一种嵌入式装置的启动方法和装置
CN105912393A (zh) * 2016-04-12 2016-08-31 合肥联宝信息技术有限公司 禁止bios系统部分功能的方法、装置及计算机
JP2018097799A (ja) * 2016-12-16 2018-06-21 富士通株式会社 端末装置及びデバイス制御プログラム
US10496307B1 (en) * 2016-12-30 2019-12-03 EMC IP Holding Company LLC Reaching a normal operating mode via a fastboot procedure
US10585671B2 (en) 2017-07-17 2020-03-10 International Business Machines Corporation Resource-based boot sequence
CN108763760B (zh) * 2018-05-29 2022-03-22 西安微电子技术研究所 一种基于两级boot结构的系统级芯片
JP6540980B1 (ja) 2018-05-29 2019-07-10 レノボ・シンガポール・プライベート・リミテッド 情報処理装置、制御方法、及びプログラム
US11144326B2 (en) 2019-02-19 2021-10-12 Cisco Technology, Inc. System and method of initiating multiple adaptors in parallel
KR20210032629A (ko) 2019-09-17 2021-03-25 삼성전자주식회사 지문 인식 센서를 포함하는 스토리지 장치의 구동 방법 및 이를 수행하는 스토리지 장치
US11392418B2 (en) 2020-02-21 2022-07-19 International Business Machines Corporation Adaptive pacing setting for workload execution
KR102342442B1 (ko) * 2020-07-14 2021-12-22 한국항공우주연구원 복수의 하드웨어 디바이스를 포함하는 시스템 및 그 초기화 제어 방법
CN111966416A (zh) * 2020-08-21 2020-11-20 山东超越数控电子股份有限公司 基于uefi的指纹模块识别方法及支持指纹识别的系统

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
JP2001265598A (ja) 2000-03-15 2001-09-28 Matsushita Electric Ind Co Ltd 情報処理装置
JP2002091783A (ja) 2000-09-12 2002-03-29 Matsushita Electric Ind Co Ltd 情報処理装置
JP2002183076A (ja) * 2000-12-11 2002-06-28 Toshiba Corp 情報処理装置及び情報処理装置の起動方法
EP1265134A1 (de) * 2001-06-08 2002-12-11 Hewlett-Packard Company, A Delaware Corporation Ein Urladungsverfahren für einen Rechner, ein UrladungsROM oder BIOS, und ein Betriebssystem
US7467417B2 (en) * 2003-06-18 2008-12-16 Architecture Technology Corporation Active verification of boot firmware
CN1926521B (zh) * 2004-03-18 2010-10-06 英特尔公司 尽管资源不足仍支持引导的方法和装置
KR100575156B1 (ko) 2004-05-19 2006-04-28 삼성전자주식회사 컴퓨터 시스템 및 그 제어방법
JP2006323549A (ja) * 2005-05-18 2006-11-30 Hitachi Ltd システムの起動方法
US20060293891A1 (en) * 2005-06-22 2006-12-28 Jan Pathuel Biometric control systems and associated methods of use
JP2006139811A (ja) * 2006-02-10 2006-06-01 Sharp Corp 情報処理装置
US20080026784A1 (en) 2006-07-31 2008-01-31 Motorola, Inc. Method and system for rapid initiation sequence for mobile unit
US7962734B2 (en) * 2006-09-20 2011-06-14 Hewlett-Packard Development Company, L.P. Method of restarting a computer platform
US20080288765A1 (en) * 2007-05-17 2008-11-20 Inventec Corporation Computer system capable of reducing booting time and method thereof
CA2593169A1 (en) * 2007-07-06 2009-01-06 Tugboat Enterprises Ltd. System and method for computer data recovery
JP2009217711A (ja) * 2008-03-12 2009-09-24 Mitsubishi Electric Corp 情報処理装置
JP4795378B2 (ja) 2008-04-01 2011-10-19 レノボ・シンガポール・プライベート・リミテッド コンピュータおよびブート方法
JP2010079566A (ja) * 2008-09-25 2010-04-08 Alpine Electronics Inc 情報処理装置およびアプリケーション起動方法
JP5335622B2 (ja) 2009-08-31 2013-11-06 レノボ・シンガポール・プライベート・リミテッド 設定情報データベースを管理するコンピュータ・プログラム
JP5335625B2 (ja) 2009-09-02 2013-11-06 レノボ・シンガポール・プライベート・リミテッド ブート時間を短縮するコンピュータ・プログラム
JP5026494B2 (ja) 2009-11-12 2012-09-12 レノボ・シンガポール・プライベート・リミテッド 高速で起動するコンピュータ
US8225009B1 (en) * 2010-02-25 2012-07-17 Symantec Corporation Systems and methods for selectively discovering storage devices connected to host computing devices
US8453049B1 (en) * 2010-05-19 2013-05-28 Google Inc. Delayed code parsing for reduced startup latency
JP5200085B2 (ja) 2010-11-04 2013-05-15 レノボ・シンガポール・プライベート・リミテッド コンピュータを短時間で起動する方法およびコンピュータ
US9003175B2 (en) * 2011-04-29 2015-04-07 Lenovo (Singapore) Pte. Ltd. System and method for accelerated boot performance

Also Published As

Publication number Publication date
US9003175B2 (en) 2015-04-07
US20150212827A1 (en) 2015-07-30
JP2014197407A (ja) 2014-10-16
US20120278600A1 (en) 2012-11-01
JP5759044B2 (ja) 2015-08-05
US10228952B2 (en) 2019-03-12
CN102779050B (zh) 2016-03-02
JP2012234539A (ja) 2012-11-29
CN102779050A (zh) 2012-11-14

Similar Documents

Publication Publication Date Title
DE102012100378A1 (de) System und Verfahren für eine beschleunigte Boot-Leistung
US6434696B1 (en) Method for quickly booting a computer system
DE112008004006T5 (de) Verfahren und System zum Bereitstellen von Hybrid-Herunterfahr- und schnellen Hochfahr-Prozessen
DE102013104328A1 (de) Aufgabenzuteilung in großen und kleinen Kernen
DE102013104329B4 (de) Aufgabenzuteilung in großen und kleinen Kernen
WO2016173537A1 (en) Setting startup parameter and controlling startup of mainboard
DE112012005209T5 (de) Brückenfunktion zwischen Virtual Machine Monitor und Bare-Metal-Bootvorgang
DE102012109959A1 (de) Automatische Vergrößerungs- und Auswahlbestätigung
US9417886B2 (en) System and method for dynamically changing system behavior by modifying boot configuration data and registry entries
US8312256B2 (en) Display of a basic input/output system (BIOS) productivity display
DE102012107810A1 (de) Dynamische Benutzerschnittstelle basierend auf verbundenen Geräten
DE102007060324A1 (de) Computerbetrieb im Mehrfachmodus
US9600295B2 (en) Systems and methods of providing multiple video outputs during a pre-boot environment
US9411602B2 (en) Techniques for booting an information processing system
US10491736B2 (en) Computer system and method thereof for bluetooth data sharing between UEFI firmware and OS
US11030047B2 (en) Information handling system and method to restore system firmware to a selected restore point
DE102013102284A1 (de) Berührungseingabeeinstellungsmanagement
US7117353B2 (en) Methods and apparatus to enable console redirection in a multiple execution environment
US9852028B2 (en) Managing a computing system crash
US10198270B2 (en) Dynamic hardware configuration via firmware interface at computing device boot
DE102018211730A1 (de) Technologien für kopflose Serververwaltbarkeit und autonomes Logging
US8656149B2 (en) Rapid activation of service management processor subsystem for server device
TWI782712B (zh) 具有可載入bios預設配置之系統及載入bios預設配置之方法
DE102012110201B4 (de) Wiederverwenden einer Sicherheitseinrichtung in hybriden Informations-Handhabungs-Geräten
US20150309804A1 (en) Decoalescing resource utilization at boot

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R016 Response to examination communication
R082 Change of representative

Representative=s name: GRUENECKER PATENT- UND RECHTSANWAELTE PARTG MB, DE