FR2904709A1 - Dispositif et procedes de mise a jour de micrologiciel - Google Patents

Dispositif et procedes de mise a jour de micrologiciel Download PDF

Info

Publication number
FR2904709A1
FR2904709A1 FR0705218A FR0705218A FR2904709A1 FR 2904709 A1 FR2904709 A1 FR 2904709A1 FR 0705218 A FR0705218 A FR 0705218A FR 0705218 A FR0705218 A FR 0705218A FR 2904709 A1 FR2904709 A1 FR 2904709A1
Authority
FR
France
Prior art keywords
firmware
operating system
program
information processing
update module
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.)
Withdrawn
Application number
FR0705218A
Other languages
English (en)
Inventor
Michael E Brown
Matthew L Domsch
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.)
Dell Products LP
Original Assignee
Dell Products LP
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 Dell Products LP filed Critical Dell Products LP
Publication of FR2904709A1 publication Critical patent/FR2904709A1/fr
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates

Landscapes

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

Abstract

L'invention concerne un procédé de mise à jour d'un micrologiciel comportant l'exécution d'un programme de gestion de changement de système d'exploitation natif qui fonctionne avec un module de mise à jour de micrologiciel pour mettre à jour un programme micrologiciel dans le système de traitement d'informations (5). Un système (5) exécute un système d'exploitation. Un programme de gestion de changement de système d'exploitation fonctionne avec le système d'exploitation et un module de mise à jour de micrologiciel pour mettre à jour un programme micrologiciel dans le système (5). Un autre procédé comporte la génération d'un module de mise à jour de micrologiciel exécutable dans un programme de gestion de changements sur un système de traitement d'informations et la mémorisation du module de mise à jour de micrologiciel dans un référentiel disponible à un utilisateur.

Description

La présente description concerne les systèmes de traite ment d'informations.
Du fait de la valeur et de l'utilisation croissantes des informations, les personnes et les entreprises cherchent des moyens supplémentaires pour traiter et mémoriser les informations. L'un des choix mis à la disposition des utilisateurs concerne les systèmes de traitement d'informations. Un système de traitement d'informations d'une manière générale traite, compile, mémorise et/ou communique des informations ou des données à des fins commercia les, personnelles ou autres, de manière à permettre aux utilisateurs d'exploiter la valeur des informations. Du fait que les besoins et impératifs en termes de technologie et de traitement d'informations varient entre utilisateurs ou applications, les systèmes de traitement d'informations peuvent également varier en fonction du type d'informations qui sont traitées, de la manière selon laquelle les informations sont traitées, de la quantité d'informations qui sont traitées, mémorisées ou communiquées, et du degré de rapidité et d'efficacité avec lequel les informations peuvent être traitées, mémorisées ou communiquées. Les variations des systèmes de traitement d'informations permettent que les systèmes de traitement d'informations soient généraux ou configurés pour un utilisateur spécifique ou une utilisation spécifique telle que le traitement de transactions financières, les réservations de vols, le stockage de données d'entreprises ou les communications globales. De plus les systèmes de traitement d'informations peuvent inclure une variété de composants matériels et logiciels qui peuvent être configurés pour traiter, mémoriser et communiquer des informations et peuvent inclure un ou plusieurs systèmes informatiques, systèmes de mémorisation de données et systèmes de gestion de réseaux.On présentera dans ce qui va suivre un résumé général de plusieurs aspects de la description afin d'offrir une compréhension de base d'au moins certaines facettes de l'invention. Ce résumé n'est pas une présentation généraie exhaustive de l'invention. Il n'est pas destiné à identifier des éléments clé ou critiques de l'invention ou à limiter la portée des revendications. Le résumé qui va suivre présente simplement certains concepts de l'invention sous une forme générale en tant que prélude à la description plus détaillée qui va suivre.
Un premier aspect de l'invention concerne un procédé pour mettre à jour un micrologiciel, qui comporte l'exécution d'un programme de gestion de changement de système d'exploitation natif qui agit en coopération avec un module de mise à jour de micrologiciel pour mettre à jour un programme micrologiciel dans le système de traitement d ' informations .
Selon diverses caractéristiques subsidiaires avantageuses : — le programme micrologiciel est mis à jour sans nécessiter de redémarrage du système de traitement d'informations ;
— le procédé comporte en outre l'exécution d'un programme d'inventaire de micrologiciel sur le système de traitement d'informations afin de déterminer un inventaire du micrologiciel du système de traitement d'informations ;
— le procédé comporte en outre l'exécution d'un second programme de gestion de changement de système d'exploitation natif sur le système de traitement d'informations afin de transmettre une interrogation à un référentiel afin d'identifier un module de mise à jour de micrologiciel associé à l'inventaire de micrologiciel ;— le système d'exploitation natif est choisi dans le groupe formé par : un système d'exploitation LINUX, un système d'exploitation UNIX et un système d'exploitation WINDOWS ; — le programme micrologiciel est un programme d'initialisation au démarrage ;
— le programme d'inventaire de micrologiciel identifie une dépendance de module de mise à jour ;
— le référentiel est distant du système de traitement d'informations.
Selon un autre aspect, l'invention concerne un dispositif comporte un système de traitement d'informations exécutant un système d'exploitation. Un programme de gestion de changement de système d'exploitation dans une mémoire du système de traitement d'informations fonctionne en coopération avec le système d'exploitation et un module de mise à jour de micrologiciel pour mettre à jour un programme micrologiciel dans le système de traitement d ' informations . Selon diverses caractéristiques subsidiaires avantageuses :
— le programme micrologiciel est mémorisé dans une mémoire non volatile ;
— le dispositif comporte en outre une carte complémentaire en communication de données avec le système de traitement d'informations ;
— le programme de gestion de changement de système d'exploitation fonctionne en coopération avec un second module de mise à jour de micrologiciel pour mettre à jour un second programme micrologiciel dans une seconde mémoire localisée sur la carte complémentaire ;
— le système d'exploitation est choisi dans le groupe formé par : un système d'exploitation LINUX, un système d'exploitation UNIX et un système d'exploitation WINDOWS.Selon un autre aspect encore, l'invention concerne un procédé pour mettre à jour un micrologiciel, qui comporte la génération d'un module de mise à jour de micrologiciel qui est exécutable dans un programme de gestion de changement s ' exécutant dans un système d'exploitation natif sur un système de traitement d'informations, et la mémorisation du module de mise à jour de micrologiciel dans un référentiel disponible à un utilisateur. Selon diverses caractéristiques subsidiaires avantageuses :
— le système d'exploitation natif est choisi dans le groupe formé par : un système d'exploitation LINUX, un système d'exploitation UNIX et un système d'exploitation WINDOWS ; — le référentiel comporte un support lisible par ordinateur ayant le module de mise à jour de micrologiciel mémorisé sur celui-ci ;
— le référentiel comprend le module de mise à jour du micrologiciel mémorisé sur un second système de traitement d'informations en communication de données avec le système de traitement d'informations. Pour une compréhension détaillée des modes de réalisation illustratifs, on va maintenant se reporter à la description détaillée qui suit, faite en association avec les dessins annexés, sur lesquels des références numériques identiques sont attribuées à des éléments identiques, sur lesquels :
— la figure 1 est un schéma décrivant un exemple non limitatif d'un système de traitement d'informations, — la figure 2 est un schéma décrivant un exemple non limitatif d'un système de traitement d'informations et d'un référentiel de mises à jour distant,
— la figure 3 est un schéma décrivant un exemple non limitatif d'un ordinogramme de mise à jour de micrologiciel conformément à un mode de réalisation illustratif, — la figure 4 est un schéma d'une structure de données à utiliser dans un mode de réalisation de la présente invention.
Aux fins de la présente description, un système de traitement d'informations (IHS) peut inclure tout dispositif, ou ensemble de dispositifs, fonctionnel (s) pour calculer, classer, traiter, émettre, recevoir, récupérer, envoyer, commuter, mémoriser, afficher, manifester, détecter, enregistrer, reproduire, gérer ou utiliser toute forme d'informations, de renseignements ou de données à des fins commerciales, scientifiques, de commande ou autres. Par exemple, un système de traitement d'informations peut être un ordinateur individuel, un dispositif de mémorisation de réseau ou tout autre dispositif adapté et peut varier en taille, forme, performance, fonctionnalité et prix. Le système de traitement d'informations peut inclure une mémoire à accès direct (RAM) , une ou plusieurs ressources de traitement telles qu'une unité centrale de traitement (CPU) ou une logique de commande matérielle ou logicielle, une mémoire à lecture seule (ROM) et/ou d'autres types de mémoire non volatile. Des composants supplémentaires du système de traitement d'informations peuvent inclure une ou plusieurs unités de disque, un ou plusieurs ports réseau pour communiquer avec des dispositifs externes ainsi que divers dispositifs d'entrée et de sortie (E/S) , tels qu'un clavier, une souris et un afficheur vidéo. Le système de traitement d'informations peut également inclure un ou plusieurs bus opérationnels pour transmettre des communications entre les divers composants matériels.
Lorsque du courant électrique est appliqué à l'IHS, un programme d'initialisation est automatiquement activé au démarrage du système. Le programme d'initialisation audémarrage, qui peut inclure un programme de système d'entrée/sortie de base (BIOS) , peut tester le matériel de l'IHS et la connectivité, exécuter des tâches de service et charger un programme d'exploitation qui permet à l'IHS d'exécuter des tâches nécessaires. Le terme BIOS a été utilisé à l'origine par des fournisseurs d'ordinateurs personnels pour se référer à un programme d'initialisation au démarrage. Le terme est également devenu commun pour identifier un micrologiciel de programme d'initialisation au démarrage utilisé dans d'autres dispositifs matériels tels que des serveurs de réseau. Encore d'autres classes d'ordinateurs utilisent ces termes génériques tels que "moniteur d'amorçage", "chargeur d'amorçage" ou "ROM d'amorçage" pour se référer au programme d'initialisation au démarrage. Des exemples d'un programme d'initialisation au démarrage incluent, mais ne sont pas limités à : BIOS PC ; BIOS EFI (Interface Micrologicielle Extensible) ; et Micrologiciel Ouvert. Le terme programme d'initialisation au démarrage est utilisé ici pour indure tous ces programmes d'initialisation au démarrage. En outre, un micrologiciel peut également être résident dans l'IHS pour commander et/ou communiquer avec, par exemple, des unités de disque dur, un circuit de réseau et d'autres dispositifs périphériques. Comme utilisé dans l'invention, un programme micrologiciel, également appelé image micrologicielle, inclut tout logiciel quelconque intégré dans un dispositif IHS utilisé pour exécuter des tâches prédéfinies. Dans le but de l'invention, le terme "micrologiciel" inclut, mais n'est pas limité à, un programme d'initialisation au démarrage. Un micrologiciel est communément mémorisé dans une mémoire non volatile. Une mémoire non volatile telle qu'utilisée ici, inclut tout dispositif de mémoire quelconque qui ne perd pas de données mémorisées lors de perte de puissance.Le programme d'initialisation au démarrage peut également concerner le chargement du système d'exploitation (OS). Comme utilisé ici, 1 ' OS est un programme logiciel, ou un ensemble de programmes qui gère les ressources matérielles et logicielles d'un dispositif électronique commandé par processeur, y compris, mais non limité à : un ordinateur, une carte mère, un serveur, un périphérique, des dispositifs E/S et tout autre composant IHS quelconque, ou une combinaison de composants. Un système OS d'exécution exécute des tâches de base, telles que commander et allouer de la mémoire, hiérarchiser le traitement des instructions, commander des dispositifs d'entrée et de sortie, faciliter la mise en réseau et gérer des fichiers. Des systèmes d'exploitation communs incluent, mais ne sont pas limités à, LINUX, UNIX et WINDOWS (marques déposées). Il est prévu que tout système d'exploitation approprié quelconque peut être utilisé dans les divers aspects de la présente invention. Il existe de nombreuses occasions au cours desquelles il est souhaitable de mettre à jour des parties du micrologiciel IHS. En tant qu'exemple non limitatif, le programme d'initialisation au démarrage système peut être mis à jour pour réparer des erreurs de programmation logicielle, communément appelées "bogues". En outre, des mises à jour peuvent tirer avantage de nouvelles fonctions de programme d'initialisation au démarrage qui deviennent disponibles après une mise à jour précédente, ou permettre au programme d'initialisation au démarrage de supporter un nouveau matériel système. Des mises à jour du micrologiciel utilisé pour des routines hors démarrage peuvent nécessiter une mise à jour pour des raisons similaires à celles définies ci-dessus pour un programme d'initialisation au démarrage. Sur des systèmes basés sur un PC, des mises à niveau de micrologiciel sont souvent délivrées en utilisant desprogrammes d'utilitaire basés sur un système d'exploitation à disque (DOS) plus rudimentaire . Ces mises à niveau peuvent nécessiter d'utiliser un environnement DOS pour accéder aux programmes d'utilitaire basé sur DOS. En se reportant à la figure 1, dans un exemple non limitatif un système de traitement d'informations 5, conformément à un premier aspect, comporte une unité centrale de traitement (CPU) 15. La CPU 15 peut être un processeur, un microprocesseur, un mini-calculateur ou tout autre dispositif approprié quelconque, pour exécuter des instructions programmées. La CPU 15 peut comporter une pluralité de ces processeurs, microprocesseurs, minicalculateurs et autres dispositifs. La CPU 15 peut être en communication de données sur un bus d'interface locale 40 ayant une mémoire de données fixes 25 et une mémoire 20.
La mémoire 20 comporte une mémoire non volatile 35 ayant un programme micrologiciel 37, tel qu'un programme d'initialisation au démarrage, mémorisé dans celle-ci. Une mémoire non volatile inclut, mais n'est pas limitée à, une mémoire flash et une mémoire à lecture seule effaçable et programmable électriquement (EEPROM) . Le programme micrologiciel 37 peut contenir, par exemple, toutes les instructions de programmation requises pour commander par exemple un clavier 70, un moniteur d'affichage 75, une souris 80, une mémoire de données mobile 65, d'autres dispositifs d'entrée/sortie non représentés ici et un certain nombre de fonctions et/ou dispositifs divers. La mémoire 20 peut également comporter une mémoire à accès direct (RAM) 30. Le système OS et les programmes d'application peuvent être chargés dans la mémoire RAM 30 en vue de leur exécution. La mémoire RAM 30 peut être une mémoire volatile de sorte que des données dans la mémoire RAM 30 sont typiquement perdues lors d'une perte d'alimentation.Un dispositif de mémoire de données fixe 25 peut être utilisé pour mémoriser le système OS, des programmes d'application et d'autres données à utiliser par l'IHS 5. Un dispositif de mémorisation de données fixe se rapporte à des dispositifs de mémorisation non volatile incluant des dispositifs de mémorisation permanents et/ou semi-permanents. Des dispositifs de mémorisation de données fixes peuvent inclure, mais ne sont pas limités à, une unité de disque dur (HDD) et une unité à bande magnétique. En outre, un dispositif de mémorisation de données mobile 65 peut s'interfacer avec un bus d'interface local
40 pour transférer des données vers l'IHS 5 ou depuis celui-ci. Des exemples de mémoires de données mobiles incluent, mais ne sont pas limités à : une unité de disque dur portable externe ; un dispositif de mémorisation à semi-conducteurs, tel qu'une mémoire flash ; et un dispositif de mémorisation sur disque optique, tel qu'un disque compact (CD) et/ou un DVD. L'IHS 5 peut en outre comporter un adaptateur d'affichage vidéo 45, une pluralité d'interfaces d'entrée 50, une carte d'interface de modem/réseau (NIC) 55 et une pluralité d'interfaces de sortie 60. L'interface de sortie 60 peut transmettre des données à une imprimante 90 en vue d'une impression. L'IHS 5 peut être couplé à un réseau externe 95 via le contrôleur NIC 55 permettant ainsi à l'IHS 5 d'envoyer des données via le réseau externe 95 à un dispositif distant et de recevoir des données via celui-ci en provenance d'un dispositif distant. Comme représenté, le réseau externe 95 peut être un réseau local (LAN) , un réseau étendu (WAN) , incluant Internet ou tout autre réseau similaire quelconque. Comme décrit sur la figure 1, l'IHS
5 peut fonctionner en tant qu'ordinateur personnel, dispositif de mémorisation de réseau, serveur de réseau outout autre dispositif de traitement d'informations autorisé.
Selon un autre aspect, en se reportant à la figure 2, un exemple non limitatif d'un système de traitement d'infor5 mations 100 comporte une unité centrale de traitement 15. L'unité CPU 15 est en communication de données avec la mémoire 35 ayant un programme micrologiciel, tel qu'un programme d'initialisation au démarrage, mémorisé dans celle-ci. La mémoire 35 comporte une mémoire non volatile
10 comme décrit précédemment. Une unité de disque dur 115 fournit une mémoire de données fixe pour un système OS et pour des programmes d'application et d'autres données. La CPU 15 est également en communication de données avec l'unité HDD 115 et le contrôleur d'interface de réseau
15 55. L'unité HDD 115 et le contrôleur NIC 55 peuvent également avoir tous les deux un micrologiciel mémorisé dans une mémoire non volatile pour commander chaque dispositif respectif. L'IHS 100 peut en outre inclure une carte complémentaire 127 ayant un micrologiciel résident. La carte
20 complémentaire 127 peut être en communication de données avec l'unité CPU 15. La carte complémentaire 127 peut fournir, en tant qu'exemples non limitatifs, une commande d'affichage vidéo et une commande d'interface de sortie. Un autre exemple non limitatif d'une carte complémentaire
25 peut être une carte RAID (réseau redondant de disques indépendants) . Une carte RAID commande une mémorisation de données entre de multiples dispositifs de mémorisation, tels que des disques durs. Des exemples de mémorisation de données RAID incluent, mais ne sont pas limités à, (a)
30 offrir une plus grande mémorisation de données insensibles aux défaillances en mémorisant des données de manière redondante à travers de multiples disques, (b) fournir des performances accrues en partageant des données à travers de multiples disques ou, (c) une combinai-
35 son particulière de (a) et (b) .La mémoire 25 est également en communication de données avec la CPU 15 et peut mémoriser au moins une partie du système OS utilisé pour actionner l'IHS 100. Le système OS peut être mémorisé sur une unité HDD 115. Au moins une partie du système OS peut être chargée depuis l'unité HDD 115 dans la mémoire 25 par le programme d'initialisation au démarrage pendant le démarrage système. Dans un exemple non limitatif, l'IHS 100 communique sur un réseau 135 avec un référentiel de programme de logiciel/micrologiciel 130. Le référentiel 130 peut résider dans un système IHS séparé, un serveur ou tout autre système de traitement de fichier approprié ayant des mises à jour mémorisées de manière récupérable dans celui-ci. Le référentiel 130 peut comporter de multiples référentiels accessibles sur le réseau. Le réseau 135 peut être un réseau LAN/WAN incluant l'Internet, et peut utiliser tout type quelconque de connexion appropriée pour une communication de données incluant, mais n'étant pas limitée à, une ligne terrestre, une connexion radiofréquence, une liaison par satellite et une liaison hertzienne.
Dans un autre aspect, la présente invention fournit un système pour mettre à jour des programmes micrologiciels dans l'IHS 100 en utilisant en grande partie le même type de procédure et en utilisant en grande partie les mêmes programmes d'utilitaire de gestion de changement de logiciel utilisés pour mettre à jour le système OS s ' exécutant existant, également connu en tant que natif. Dans un mode de réalisation non limitatif, les programmes de gestion de changement sont résidents dans l'IHS 100. Les systèmes de gestion de changement de logiciel comportent typiquement des systèmes de gestion de modules pour faciliter les mises à niveau. Un système de gestion de modules comporte une collection de programmes d'utilitaires de logiciels (outils) utilisés pour automatiser le processus d'installation, de mise à niveau, de configuration et de retrait des modules logiciels d'un ordinateur. Dans un tel système, un logiciel est distribué dans des modules, par exemple, dans un fichier unique. Ces modules incluent souvent la mise à niveau logicielle et d'autres informations importantes, telles qu'un nom de fichier, une version et un nom de fournisseur. Une liste d'autres modules logiciels, appelés dépendances, peut également être incluse. Les dépendances peuvent être requises pour que la mise à niveau logicielle fonctionne correctement. Par exemple, une version particulière d'un programme peut être requise pour mettre à jour correctement un autre programme sur un système IHS. Des exemples non limitatifs de systèmes de gestion de modules pour un système IHS en utilisant LINUX en tant que système OS incluent, mais ne sont pas limités à, le Gestionnaire de Modules RPM, le gestionnaire de modules GENTOO et le gestionnaire de modules DEBIAN. Un exemple non limitatif d'un gestionnaire de modules pour un système IHS s' exécutant sous WINDOWS en tant que système OS est MICROSOFT Installer MSI (raarques déposées) . Il est prévu que la présente invention englobe tous ces gestionnaires de modules et leurs programmes d'utilitaires logiciels associés pour tous les systèmes d'exploitation appropriés, ainsi que les futurs systèmes de gestion de modules développés dans le futur. Un gestionnaire de modules est un programme désigné pour générer et gérer des modules de logiciel incluant un programme source et/ou un programme binaire. Un gestionnaire de modules peut être exécuté sur différents types de systèmes IHS incluant, par exemple, un micro-ordinateur, une station de travail, un serveur de réseau et un mini-ordinateur. Un module de mise à jour peut inclure les programmes compilés et/ou des bibliothèques nécessaires pour mettre à jour, documenter, installer, vérifier et désinstaller, chaque fichier dans le module. En outre, un module de mise à jour peut vérifier un certificat numérique, ou une autre signature d' authentification pour chaque fichier dans le module. Le module de mise à jour peut également inclure une liste de modules de logiciel dont le module de mise à jour dépend, appelé dépendances, et une liste de services qui sont fournis par le module de mise à jour. Par exemple, en utilisant le Gestionnaire de Modules RPM en tant qu'exemple non limitatif, des fichiers de modules peuvent être de la forme de fichier *. rpm . Les modules de mise à jour peuvent être mémorisés dans une base de données telle qu'un référentiel 130, voir figure 2. Le gestionnaire de modules OS d'un système IHS peut périodiquement interroger ce référentiel pour des mises à jour logicielles. En utilisant un gestionnaire de modules, dans un mode de réalisation, des images de mise à jour de micrologiciel et les programmes d'utilitaire de mise à jour associés peuvent chacun être mis en module en tant que modules de mise à jour séparés en utilisant des techniques associées au gestionnaire de modules particulier. Une relation de dépendance quelconque existant entre les modules d'image de micrologiciel et les programmes logiciels nécessaires pour les installer peut être incluse en tant que données dans chaque module de mise à jour. Des fonctions de mise à jour, incluant, mais n'étant pas limitées à, une fonction d'inventaire de micrologiciel, une fonction de comparaison de version, une fonction de mise à niveau de micrologiciel, peuvent être incorporées dans un, ou plusieurs, programmes d'utilitaire. D'autres programmes d'utilitaires de logiciels peuvent être inclus comme requis. Des programmes de mise à jour et d'autres programmes d'utilitaires de logiciels peuvent être séparément téléchargés et mis à jour depuis les mises à jour de micrologiciel. La taille des modules de mise à jour peut être réduite en utilisant ce procédé du fait que les programmes d'utilitaires de mise à jour n'ont pas besoind'être copiés dans chacun des modules de mise à jour utilisant cet ensemble de programmes d'utilitaires. Par exemple, pour des programmes micrologiciels multisystèmes, dans lesquels le programme d'installation est applicable à de multiples types de systèmes, le programme d'installation n'est pas dupliqué pour chaque type de système, mais rendu disponible une fois, en vue d'une utilisation par chacun des modules de mise à jour de micrologiciel . Dans un autre mode de réalisation, un programme d'installation de micrologiciel est créé pour chaque type OS. Le programme d'installation de micrologiciel s'exécute dans un environnement OS s 'exécutant. Lorsque exécuté, l'installateur de micrologiciel OS reconnaît un module de mise à jour et procède à l'installation de l'image dans la mémoire non volatile du système. La mise à jour de micrologiciel a une dépendance sur le programme d'installation. Pour satisfaire cette dépendance, le module de mise à jour de micrologiciel peut inclure une structure de données indiquant la dépendance. Par exemple, le module de mise à jour de micrologiciel peut inclure une structure de données ayant une chaîne 'Nécessite:'. La chaîne 'Nécessite: ' identifie les dépendances du module de mise à jour de micrologiciel pour s'assurer qu'une version donnée du programme d'installation OS est disponible afin de 1 ' installer.
Le module de mise à jour de micrologiciel peut en outre inclure une structure de données telle que, par exemple, une chaîne 'Délivre:1. La chaîne 'Délivre:' identifie, entre autres choses, la nouvelle version de micrologiciel et l'ID du fournisseur du micrologiciel pour lequel cette mise à jour est prévue. Un module de mise à jour peut être lié à un ou plusieurs ID Système qui identifient de multiples produits nécessitant le même module de mise à jour. Dans un mode de réalisation non limitatif, le module de mise à jour de micrologiciel a une chaîne 'Délivre: ' de la forme : system_bios (vendor-$vendor_system-$system) = $version', où $vendor est l'ID du Fournisseur défini PCI SIG (Groupe d'intérêt Spécial d'Interconnexion de Composant Périphérique) , $system est un identifiant de système unique au fournisseur, et $version est la chaîne de version d'une mise à jour d'image de micrologiciel de programme d'initialisation au démarrage. Des fichiers de données supplémentaires peuvent être inclus dans le module de mise à jour, lorsque nécessaire.
La figure 4 est un exemple non limitatif d'une structure de données utilisée pendant le processus de mise à jour d'un programme micrologiciel. La structure de données "délivre" 400 représentée sur la figure 4 a quatre entités conformément à un mode de réalisation illustratif. La structure de données "délivre" est créée pendant la génération d'un module de mise à jour de micrologiciel. Une entrée ' system_bios ' 402 contient des données représentant le type de programme micrologiciel à mettre à jour. Une entrée ' vendor_$vendor ' 404 contient des données représentant le fournisseur particulier du micrologiciel à mettre à jour. Ces données peuvent être sous la forme du numéro d'identification du Fournisseur de Groupe d'intérêt Spécial d'Interconnexion de Composant Périphérique. Une entrée ' system_$system' 406 contient des données représentant un identifiant de système fournisseur. Une entrée '=$version' 408 contient des données représentant la version du logiciel de mise à jour contenue dans le programme de mise à jour de micrologiciel.
Dans encore un autre mode de réalisation, une mise en module similaire peut être utilisée pour un micrologiciel de carte supplémentaire. Dans ce cas, l'ID PCI standard de l'industrie de la carte peut être inclus dans unechaîne 'Délivre:1 pour identifier le fournisseur et la version du micrologiciel de carte supplémentaire. Dans encore un autre mode de réalisation, les modules de mise à jour de micrologiciel peuvent être mémorisés dans un référentiel, tel qu'un référentiel 130, voir figure 2, qui peut être accessible via l'Internet et/ou un intranet. Le référentiel 130 peut être conservé et peut être rend disponible par un accès distant par les programmes de gestion de mises à jour OS d'utilisateurs nécessitant des mises à jour. Par exemple, un logiciel de gestion de changements sur un système IHS, tel que le gestionnaire de modules OS, peut rechercher à travers des referentiels en ligne associés un module de mise à jour de micrologiciel (et une dépendance de logiciel) qui s'applique au matériel de ce système IHS spécifique. De multiples referentiels peuvent faire l'objet d'un accès pour différents modules de mise à jour de micrologiciel. Des referentiels peuvent être dupliqués sur de multiples sites. En variante, un support lisible par ordinateur peut avoir un référentiel de mises à jour de micrologiciel mémorisé dans celui-ci et peut être distribué à des clients pour cette activité de mise à jour. Un tel support lisible par ordinateur peut inclure, mais n'est pas limité à, un CD, un DVD, une bande magnétique, une mémoire flash, une ROM, une RAM et une disquette. Dans un exemple non limitatif, un tel référentiel de support lisible par ordinateur peut résider dans l'IHS 5.
Dans un exemple non limitatif, un programme d'inventaire de micrologiciel OS est généré, installé et exécuté sur l'IHS 100 pour identifier un micrologiciel sur le système et sur des cartes complémentaires associées et des dispositifs nécessitant des mises à jour. Ces informations incluent, mais ne sont pas limitées à, un nom d'image de micrologiciel, une version, un ID de fournisseur et une date de mise à jour la plus récente. En outre, le micrologiciel peut être utilisé pour identifier une dépendance quelconque sur d'autres modules afin d'identifier, par exemple, si la version correcte du programme exécutable de l'installeur OS est disponible sur le système pour installer la mise à jour de micrologiciel. Le logiciel de gestion de changements conserve une trace de tous les changements et met à jour l'inventaire de micrologiciel lorsque des mises à jour de micrologiciel sont disponibles. Lorsque de nouveaux dispositifs et/ou cartes complémentaires sont installés dans l'IHS 100, il peut être nécessaire d'exécuter le programme d'inventaire de micrologiciel pour créer une liste de dispositifs ajoutés, de sorte que les modules de mise à jour de micrologiciel correspondants peuvent être installés sur l'IHS 100. Une fois que le module de mise à jour de micrologiciel est téléchargé vers l'IHS, le système de gestion de changement OS s' exécutant peut prendre à sa charge et gérer les mises à niveau du module de micrologiciel d'une manière en grande partie identique à celle utilisée pour des mises à jour de logiciel OS. Ceci inclut, mais n'est pas limité à, la mise à jour du micrologiciel sans nécessiter de redémarrage du système de traitement d'informations, ou une exécution supplémentaire du programme d'initialisation au démarrage. La figure 3 est une représentation schématique d'un exemple non limitatif d'un mode de réalisation d'un schéma de mise à jour de micrologiciel, dans lequel un module de mise à jour de micrologiciel est généré à l'étape 205. Le module de mise à jour de micrologiciel est mémorisé dans un référentiel de mise à jour à l'étape 210. Un programme exécutable OS s'exécute sur un système IHS dans des versions de micrologiciel IHS d'inventaire et de micrologiciel à l'étape 215. Les dépendances de version de micrologiciel sont déterminées à l'étape 220. A l'étape 225, un programme exécutable OS s'exécute sur l'IHS en utilisant le logiciel de gestion de changement OS d'exécution et les informations d'inventaire et de version de micrologiciel, conjointement avec les informations de dépendance, pour interroger le référentiel distant en vue de mises à jour de micrologiciels disponibles. Les mises à jour de micrologiciels disponibles sont téléchargées depuis le référentiel dans l'IHS à l'étape 230. Une fois que les mises à jour sont téléchargées, un programme exécutable OS s'exécute en utilisant le logiciel de gestion de changement OS pour mettre à jour le micrologiciel associé à l'IHS à l'étape 235. Le micrologiciel associé à l'IHS inclut, mais n'est pas limité à, le micrologiciel de programme d'initialisation au démarrage, le micrologiciel de matériel IHS et le micrologiciel de carte complémentaire. Le micrologiciel de matériel IHS peut comporter un micrologiciel de disque dur, un micrologiciel de contrôleur de réseau, un micrologiciel de système d'alimentation et tout autre micrologiciel dans l'IHS. Il est prévu que la présente invention couvre tous les systèmes d'exploitation appropriés et leurs systèmes et formats de gestion de modules associés. Les concepts décrits ici sont destinés à englober les systèmes d'exploitation LINUX, UNIX et WINDOWS (marques déposées) ainsi que tout autre système d'exploitation approprié. Un exempie de système d'exploitation WINDOWS non limitatif d'un gestionnaire de modules inclut le service de Mise à Jour de Serveur WINDOWS (WSUS) qui offre de multiples modules, de multiples referentiels et des interdépendances. Dans un autre mode de réalisation, la présente invention peut être mise en oeuvre sous forme d'un ensemble d'instructions sur un support lisible par ordinateur comportant une ROM, une RAM, un CD, un DVD, une unité de disque dur, un dispositif de mémoire flash ou tout autre support lisible par ordinateur, déjà connu ou inconnu, qui lorsque exécuté, amène un système de traitement d' informations, par exemple, l'IHS 100, à mettre en oeuvre un procédé de la présente invention.
Dans un mode de réalisation illustratif, un support lisible par ordinateur contient un ensemble d'instructions exécutables lesquelles lorsque exécutées par l'IHS 100 mettent en oeuvre un procédé mettant à jour un programme micrologiciel dans l'IHS 100. Le procédé comporte l'exécution d'un programme dans l'environnement de système d'exploitation qui fonctionne en coopération avec un module de mise à jour de micrologiciel pour mettre à jour un programme micrologiciel dans le système de traitement d ' informations .
Le support lisible par ordinateur peut en outre comporter un deuxième ensemble d'instructions exécutables lesquelles, lorsque exécutées par l'IHS 100, déterminent un inventaire de micrologiciel du système de traitement d'informations .
Le support lisible par ordinateur peut en outre comporter un troisième ensemble d'instructions exécutables lesquelles, lorsque exécutées par l'IHS 100, interrogent un référentiel pour identifier un module de mise à jour de micrologiciel associé à l'inventaire de micrologiciel. Bien que plusieurs modes de réalisation aient été représentés et décrits, plusieurs modifications et remplaceents peuvent être apportés à ceux-ci sans sortir du cadre de la présente invention. En conséquence, il doit être compris que les exemples de la présente invention ont été présentés à titre d'illustration et non pas de limitation.

Claims (5)

  1. REVENDICATIONS
    1. Procédé de mise à jour d'un micrologiciel (37), caractérisé en ce qu'il comporte l'étape consistant à :
    - exécuter un programme de gestion de changement de système d'exploitation natif qui fonctionne en coopération avec un module de mise à jour de micrologiciel afin de mettre à jour un programme micrologiciel dans le système de traitement d'informations (5).
  2. 2. Procédé selon la revendication 1, caractérisé en ce que le programme micrologiciel est mis à jour sans nécessiter de redémarrage du système de traitement d'informations (5) .
  3. 3. Procédé selon la revendication 1, caractérisé en ce qu'il comporte en outre l'exécution d'un programme d'inventaire de micrologiciel sur le système de traitement d'informations (5) afin de déterminer un inventaire du micrologiciel du système de traitement d'informations (5) .
  4. 4. Procédé selon la revendication 1, caractérisé en ce qu'il comporte en outre l'exécution d'un second programme de gestion de changement de système d'exploitation natif sur le système de traitement d'informations (5) afin de transmettre une interrogation à un référentiel afin d'identifier un module de mise à jour de micrologiciel associé à l'inventaire de micrologiciel.
  5. 5. Procédé selon la revendication 1, caractérisé en ce que le système d'exploitation natif est choisi dans le groupe formé par : un système d'exploitation LINUX, un système d'exploitation UNIX et un système d'exploitation WINDOWS.6. Procédé selon la revendication 1, caractérisé en ce que le programme micrologiciel est un programme d'initialisation au démarrage.
    7. Procédé selon la revendication 3, caractérisé en ce que le programme d'inventaire de micrologiciel identifie une dépendance de module de mise à jour.
    8. Procédé selon la revendication 4, caractérisé en ce que le référentiel est distant du système de traitement d'informations (5).
    9. Dispositif, caractérisé en ce qu'il comprend : — un système de traitement d'informations (5) exécutant un système d'exploitation, et — un programme de gestion de changement de système d'exploitation dans une mémoire du système de traitement d'informations (5) qui fonctionne en coopération avec le système d'exploitation et un module de mise à jour de micrologiciel pour mettre à jour un programme micrologiciel dans le système de traitement d'informations.
    10. Dispositif selon la revendication 9, caractérisé en ce que le programme micrologiciel est mémorisé dans une mémoire non volatile.
    11. Dispositif selon la revendication 9, caractérisé en ce qu'il comporte en outre une carte complémentaire (127) en communication de données avec le système de traitement d'informations (5).
    12. Dispositif selon la revendication 11, caractérisé en ce que le programme de gestion de changement de systèmed'exploitation fonctionne en coopération avec un second module de mise à jour de micrologiciel pour mettre à jour, un second programme micrologiciel dans une seconde mémoire localisée sur la carte complémentaire (127) .
    13. Dispositif selon la revendication 9, caractérisé en ce que le système d'exploitation est choisi dans le groupe formé par : un système d'exploitation LINUX, un système d'exploitation UNIX et un système d'exploitation WINDOWS.
    14. Procédé pour mettre à jour un micrologiciel, caractérisé en ce qu'il comporte les étapes consistant à :
    — générer un module de mise à jour de micrologiciel qui est exécutable dans un programme de gestion de changement s' 'exécutant dans un système d'exploitation natif sur un système de traitement d'informations (5), et
    — mémoriser le module de mise à jour de micrologiciel dans un référentiel disponible à un utilisateur.
    15. Procédé selon la revendication 14, caractérisé en ce que le système d'exploitation natif est choisi dans le groupe formé par : un système d'exploitation LINUX, un système d'exploitation UNIX et un système d'exploitation WINDOWS.
    16. Procédé selon la revendication 14, caractérisé en ce que le référentiel comporte un support lisible par ordinateur ayant le module de mise à jour de micrologiciel mémorisé sur celui-ci.
    17. Procédé selon la revendication 14, caractérisé en ce que le référentiel comprend le module de mise à jour du micrologiciel mémorisé sur un second système de traitement d'informations (100) en communication de données avec le système de traitement d'informations (5).
FR0705218A 2006-07-26 2007-07-19 Dispositif et procedes de mise a jour de micrologiciel Withdrawn FR2904709A1 (fr)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US11/460,197 US8707297B2 (en) 2006-07-26 2006-07-26 Apparatus and methods for updating firmware

Publications (1)

Publication Number Publication Date
FR2904709A1 true FR2904709A1 (fr) 2008-02-08

Family

ID=38955032

Family Applications (1)

Application Number Title Priority Date Filing Date
FR0705218A Withdrawn FR2904709A1 (fr) 2006-07-26 2007-07-19 Dispositif et procedes de mise a jour de micrologiciel

Country Status (8)

Country Link
US (1) US8707297B2 (fr)
CN (2) CN101114233A (fr)
DE (1) DE102007032050A1 (fr)
FR (1) FR2904709A1 (fr)
GB (2) GB2459989B (fr)
IE (1) IE20070432A1 (fr)
SG (1) SG139636A1 (fr)
TW (1) TWI384399B (fr)

Families Citing this family (69)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9134989B2 (en) 2002-01-31 2015-09-15 Qualcomm Incorporated System and method for updating dataset versions resident on a wireless device
US9092286B2 (en) * 2002-12-20 2015-07-28 Qualcomm Incorporated System to automatically process components on a device
US8626146B2 (en) 2003-10-29 2014-01-07 Qualcomm Incorporated Method, software and apparatus for performing actions on a wireless device using action lists and versioning
JP4751785B2 (ja) * 2006-07-31 2011-08-17 富士通株式会社 伝送装置およびソフトウェア自動更新方法
US8688933B2 (en) * 2006-08-31 2014-04-01 Hewlett-Packard Development Company, L.P. Firmware component modification
US7730295B1 (en) * 2006-09-05 2010-06-01 Western Digital Technologies, Inc. Updating firmware of a peripheral device
US9112891B2 (en) * 2007-02-02 2015-08-18 Sharp Laboratories Of America, Inc. Remote firmware management for electronic devices
JP5065482B2 (ja) 2007-06-19 2012-10-31 クゥアルコム・インコーポレイテッド 無線環境においてデータセットを同期するための方法および機器
US8505005B1 (en) * 2007-07-24 2013-08-06 United Services Automobile Association (Usaa) Multi-platform network-based software distribution
US8122447B2 (en) * 2007-07-31 2012-02-21 Hewlett-Packard Development Company, L.P. Firmware installation
US9032390B2 (en) * 2008-07-29 2015-05-12 Qualcomm Incorporated Framework versioning
CN101778378B (zh) * 2009-01-14 2013-03-13 英华达(上海)电子有限公司 一种固件节点更新方法、装置和系统
US8429640B2 (en) * 2009-06-05 2013-04-23 Dell Products L.P. System and method for modifying firmware
US9639347B2 (en) * 2009-12-21 2017-05-02 International Business Machines Corporation Updating a firmware package
US8732689B2 (en) * 2010-02-24 2014-05-20 Schneider Electric USA, Inc. Apparatus and method for upgrading lighting controllers
US9417865B2 (en) * 2010-05-28 2016-08-16 Red Hat, Inc. Determining when to update a package manager software
US20120198434A1 (en) * 2011-01-31 2012-08-02 Digi International Inc. Virtual bundling of remote device firmware upgrade
JP6082389B2 (ja) 2011-06-07 2017-02-15 シーゲイト テクノロジー エルエルシーSeagate Technology LLC ホストから見たデバイスファームウェア更新の影響の管理
US20130007428A1 (en) * 2011-06-30 2013-01-03 Dell Products L.P. System and method for customized configuration of information handling systems
US9015457B2 (en) 2011-11-02 2015-04-21 Dell Products L.P. System and method for configuring an information handling system by implementing a customized configuration of a personality module
CN103138974A (zh) * 2011-11-28 2013-06-05 英业达科技有限公司 管理风扇转速的服务器机架系统
US9182970B2 (en) * 2012-03-30 2015-11-10 Lenovo (Singapore) Pte. Ltd. Methods for creating device preload via manufacturing and cloud content
US9934044B2 (en) * 2012-03-30 2018-04-03 Lenovo (Singapore) Pte. Ltd. Methods for customizing an operating system at an information handling device
US8966466B2 (en) * 2012-04-04 2015-02-24 Avago Technologies General Ip (Singapore) Pte. Ltd. System for performing firmware updates on a number of drives in an array with minimum interruption to drive I/O operations
CN102693143B (zh) * 2012-05-22 2015-03-11 华为技术有限公司 补丁程序的安装方法和装置
US9235404B2 (en) 2012-06-27 2016-01-12 Microsoft Technology Licensing, Llc Firmware update system
US8972973B2 (en) 2012-06-27 2015-03-03 Microsoft Technology Licensing, Llc Firmware update discovery and distribution
US9110761B2 (en) 2012-06-27 2015-08-18 Microsoft Technology Licensing, Llc Resource data structures for firmware updates
US20150143353A1 (en) * 2012-07-02 2015-05-21 Taiwan Gomet Technology Co., Ltd Firmware overwriting method in paired use wireless microphone and receiver
BR112015016953A2 (pt) 2013-01-15 2017-07-11 Hewlett Packard Development Co atualização de firmware dinâmico
US9749374B2 (en) * 2013-05-01 2017-08-29 Dell Products L.P. Systems and methods for digital fulfillment of streaming applications
US9116775B2 (en) * 2013-05-15 2015-08-25 Dell Products L.P. Relationship-based dynamic firmware management system
US9032423B2 (en) 2013-06-21 2015-05-12 Microsoft Technology Licensing, Llc Dependency based configuration package activation
US9383989B1 (en) 2014-06-16 2016-07-05 Symantec Corporation Systems and methods for updating applications
US20160048389A1 (en) * 2014-08-12 2016-02-18 Deepaganesh Paulraj System and method for supporting part replacement
DE102014116321A1 (de) * 2014-11-10 2016-05-12 Harting Electric Gmbh & Co. Kg Update einer Firmware
US9886264B2 (en) * 2014-12-09 2018-02-06 Xiaomi Inc. Method and device for upgrading firmware
DE102014118552A1 (de) * 2014-12-12 2016-06-16 Schneider Electric Automation Gmbh Firmware-Management-System sowie Firmware-Management-Verfahren zum Update von Firmware von Geräten
DE102015202791A1 (de) * 2015-02-17 2016-08-18 Robert Bosch Gmbh Verfahren zur Firmware-Aktualisierung drahtlos in einem Weitverkehrsnetz
CN106155705B (zh) * 2015-03-22 2020-07-24 联想(北京)有限公司 电子设备及ota修复方法
CN104898637B (zh) * 2015-03-27 2017-11-10 北京经纬恒润科技有限公司 一种汽车控制器的自刷新方法及系统
US10338944B2 (en) * 2016-03-11 2019-07-02 International Business Machines Corporation Automatic discovery and classfication of java virtual machines running on a logical partition of a computer
US10333786B2 (en) * 2016-07-15 2019-06-25 Dell Products L.P. System and method for refreshing an information handling system using many to one peer based communication
CN106550022B (zh) * 2016-10-24 2020-12-18 上海瀚银信息技术有限公司 一种应用程序分发控制处理方法及系统
US10802818B2 (en) * 2017-05-02 2020-10-13 Dell Products L.P. Automatic firmware updates
EP3447636B1 (fr) 2017-08-21 2020-09-30 Carrier Corporation Système d'incendie et de sécurité incluant une boucle adressable et une mise à jour de micrologiciel automatique
US10956143B2 (en) * 2017-12-06 2021-03-23 Hewlett Packard Enterprise Development Lp Server updates
US10613847B2 (en) 2018-02-13 2020-04-07 Dell Products, L.P. Information handling system to treat demoted firmware with replacement firmware
WO2019216909A1 (fr) * 2018-05-11 2019-11-14 Siemens Industry, Inc. Système et procédé automatisés de mise à jour de micrologiciel sur des dispositifs industriels
CN108897570B (zh) * 2018-06-20 2023-01-03 大国创新智能科技(东莞)有限公司 基于云计算与人工智能的版本兼容方法和机器人系统
US10452386B1 (en) * 2018-07-19 2019-10-22 American Megatrends International, Llc Non-destructive update of discrete components of firmware
CN109213506A (zh) * 2018-08-24 2019-01-15 郑州云海信息技术有限公司 一种固件信息获取方法及相关装置
US11100228B2 (en) * 2018-10-25 2021-08-24 Dell Products, L.P. System and method to recover FPGA firmware over a sideband interface
US10936301B2 (en) 2019-04-12 2021-03-02 Dell Products, L.P. System and method for modular patch based firmware update
US10789062B1 (en) 2019-04-18 2020-09-29 Dell Products, L.P. System and method for dynamic data deduplication for firmware updates
US11106622B2 (en) * 2019-05-10 2021-08-31 Dell Products L.P. Firmware update architecture with OS-BIOS communication
TWI710953B (zh) * 2019-05-31 2020-11-21 緯創資通股份有限公司 韌體更新裝置以及韌體更新方法
CN111045714B (zh) * 2019-12-19 2022-03-01 歌尔股份有限公司 一种固件更新方法、装置、耳机及计算机可读存储介质
US11431476B2 (en) 2020-04-30 2022-08-30 Dell Products L.P. Install time creation of forward error correction data and integrity checksums
US11432267B2 (en) 2020-07-27 2022-08-30 Dell Products L.P. Method and apparatus for seamless and secure redfish over BLE for management consoles
US11422788B2 (en) * 2020-08-17 2022-08-23 Dell Products L.P. Deploying firmware updates
US11714629B2 (en) * 2020-11-19 2023-08-01 Khoros, Llc Software dependency management
US11989551B2 (en) * 2021-03-18 2024-05-21 Quanta Computer Inc. Modular firmware composition
US20220326930A1 (en) * 2021-04-09 2022-10-13 Hewlett Packard Enterprise Development Lp Updated packages hosted by on-premise gateways managing as-a-service workloads
US20220334820A1 (en) * 2021-04-20 2022-10-20 Dell Products, L.P. System and method for intermediate software upgrades for information handling systems
US20230023833A1 (en) * 2021-07-20 2023-01-26 Dell Products L.P. Enforcing correct sequencing of firmware updates
US11922159B2 (en) * 2022-01-14 2024-03-05 Dell Products L.P. Systems and methods for cloning firmware updates from existing cluster for cluster expansion
US20240078142A1 (en) * 2022-09-02 2024-03-07 Dell Products, L.P. Managing user engagement during collaboration sessions in heterogenous computing platforms
CN118192991A (zh) * 2022-12-13 2024-06-14 富联精密电子(天津)有限公司 固件烧录方法、装置、电子设备和计算机存储介质

Family Cites Families (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2290890B (en) * 1994-06-29 1999-03-24 Mitsubishi Electric Corp Information processing system
US5909592A (en) * 1994-09-07 1999-06-01 Intel Corporation Method in a basic input-output system (BIOS) of detecting and configuring integrated device electronics (IDE) devices
KR100298420B1 (ko) * 1997-03-10 2001-10-24 윤종용 롬바이오스의업데이트방법
US5859911A (en) * 1997-04-16 1999-01-12 Compaq Computer Corp. Method for the secure remote flashing of the BIOS of a computer
KR100258966B1 (ko) * 1997-05-02 2000-06-15 윤종용 시리얼 통신을 이용한 바이오스 업그레이드 방법
KR19990026189A (ko) * 1997-09-23 1999-04-15 윤종용 바이오스 롬의 업데이트 방법
US6237091B1 (en) * 1998-10-29 2001-05-22 Hewlett-Packard Company Method of updating firmware without affecting initialization information
US6282643B1 (en) * 1998-11-20 2001-08-28 International Business Machines Corporation Computer system having flash memory BIOS which can be accessed remotely while protected mode operating system is running
US6438688B1 (en) * 1999-03-24 2002-08-20 Dell Usa, L.P. Method and computer for locally and remotely updating a basic input output system (BIOS) utilizing one update file
US6442754B1 (en) * 1999-03-29 2002-08-27 International Business Machines Corporation System, method, and program for checking dependencies of installed software components during installation or uninstallation of software
US6282647B1 (en) * 1999-06-02 2001-08-28 Adaptec, Inc. Method for flashing a read only memory (ROM) chip of a host adapter with updated option ROM bios code
US6581159B1 (en) * 1999-12-23 2003-06-17 Intel Corporation Secure method of updating bios by using a simply authenticated external module to further validate new firmware code
US7213152B1 (en) * 2000-02-14 2007-05-01 Intel Corporation Modular bios update mechanism
US6594757B1 (en) * 2000-02-25 2003-07-15 Intel Corporation Remote BIOS upgrade of an appliance server by rebooting from updated BIOS that has been downloaded into service partition before flashing programmable ROM
US6971095B2 (en) * 2000-05-17 2005-11-29 Fujitsu Limited Automatic firmware version upgrade system
US6732267B1 (en) * 2000-09-11 2004-05-04 Dell Products L.P. System and method for performing remote BIOS updates
US6804773B1 (en) * 2000-10-03 2004-10-12 Dell Products L.P. System and method for transferring information over a network
US6757838B1 (en) * 2000-10-13 2004-06-29 Hewlett-Packard Development Company, L.P. Hardware independent implementation of computer system BIOS recovery
US6832373B2 (en) * 2000-11-17 2004-12-14 Bitfone Corporation System and method for updating and distributing information
AU2002232426A1 (en) 2000-11-17 2002-05-27 Biftone Corporation System and method for updating and distributing information
US20020133420A1 (en) 2001-03-15 2002-09-19 Mccoy Craig System and method for installing a software product on a network server device
US20020188867A1 (en) 2001-06-08 2002-12-12 Bushey Robert D. System and method for appliance adaptation and evolution
JP2003044155A (ja) * 2001-07-30 2003-02-14 Hitachi-Lg Data Storage Inc ソフトウェアのインストール方法及びファームウェアのアップデート方法及びそれらに用いる記録再生装置及び記録媒体
US6990577B2 (en) * 2001-08-10 2006-01-24 Intel Corporation Updating a BIOS image by replacing a portion of the BIOS image with a portion of another BIOS image
US20030055919A1 (en) * 2001-08-30 2003-03-20 Fong Ryan Patrick One-click deployment of data processing systems
US6993650B2 (en) * 2001-10-31 2006-01-31 International Business Machines Corporation Authentications integrated into a boot code image
US7000101B2 (en) * 2001-12-21 2006-02-14 Dell Products L.P. System and method for updating BIOS for a multiple-node computer system
GB2383441B (en) * 2001-12-24 2004-01-14 Inventec Corp Display system and method for bios updating
US6725178B2 (en) * 2002-01-15 2004-04-20 International Business Machines Corporation Use of hidden partitions in a storage device for storing BIOS extension files
US6986034B2 (en) * 2002-04-11 2006-01-10 Dell Products L.P. Setting a system indication in response to a user when execution of the system setup program is desired
US20030217357A1 (en) * 2002-05-14 2003-11-20 Parry Travis J. Monitoring firmware
US7243347B2 (en) * 2002-06-21 2007-07-10 International Business Machines Corporation Method and system for maintaining firmware versions in a data processing system
US7305668B2 (en) * 2002-07-31 2007-12-04 Intel Corporation Secure method to perform computer system firmware updates
WO2004042538A2 (fr) * 2002-11-05 2004-05-21 Bitfone Corporation Systeme de mise a jour de microprogramme facilitant la mise a jour de microprogramme d'applications associees a des combines mobiles
WO2004066091A2 (fr) * 2003-01-21 2004-08-05 Bitfone Corporation Membrane de drainage et son procede d'installation
WO2004070571A2 (fr) * 2003-02-03 2004-08-19 Bitfone Corporation Systeme de mise a jour permettant de faciliter la mise a jour micrologicielle/logicielle dans un combine mobile
US20040230963A1 (en) * 2003-05-12 2004-11-18 Rothman Michael A. Method for updating firmware in an operating system agnostic manner
JP4698182B2 (ja) * 2003-09-16 2011-06-08 株式会社リコー 電子装置、ネットワーク機器、管理方法、ソフトウェア更新方法、管理プログラム、ソフトウェア更新プログラム及び記録媒体
US7509635B2 (en) * 2003-09-26 2009-03-24 Red Hat, Inc. Software and data file updating process
US7487345B2 (en) * 2003-10-10 2009-02-03 Dell Products L.P. Method of comparing build capability flags of replacement BIOS with boot capability flags of current BIOS to determine compatibility between BIOS revisions and installed hardware during flash update
US7231493B2 (en) * 2004-01-09 2007-06-12 Dell Products L.P. System and method for updating firmware of a storage drive in a storage network
US7457945B2 (en) * 2004-03-23 2008-11-25 Dell Products L.P. System and method for providing a secure firmware update to a device in a computer system
TWI238355B (en) * 2004-05-06 2005-08-21 Lite On It Corp Firmware updating method
US20060288055A1 (en) * 2005-06-08 2006-12-21 Johnson Michael K Methods, systems, and computer program products for provisioning software via a networked file repository in which a parent branch has a shadow associated therewith
US8286159B2 (en) * 2005-12-22 2012-10-09 Alan Joshua Shapiro Method and apparatus for gryphing a data storage medium

Also Published As

Publication number Publication date
TWI384399B (zh) 2013-02-01
US20080028385A1 (en) 2008-01-31
GB2459989B (en) 2010-09-29
TW200813834A (en) 2008-03-16
CN101114233A (zh) 2008-01-30
GB2440431A (en) 2008-01-30
GB2440431B (en) 2010-06-23
US8707297B2 (en) 2014-04-22
IE20070432A1 (en) 2008-03-05
CN103559052B (zh) 2017-03-01
GB0913439D0 (en) 2009-09-16
GB2459989A (en) 2009-11-18
CN103559052A (zh) 2014-02-05
DE102007032050A1 (de) 2008-02-21
SG139636A1 (en) 2008-02-29
GB2440431B8 (en) 2010-08-04
GB0713902D0 (en) 2007-08-29

Similar Documents

Publication Publication Date Title
FR2904709A1 (fr) Dispositif et procedes de mise a jour de micrologiciel
US10203946B2 (en) Retiring target machines by a provisioning server
US9952845B2 (en) Provisioning machines having virtual storage resources
US9021470B2 (en) Software provisioning in multiple network configuration environment
US20100058328A1 (en) Systems and methods for differential software provisioning on virtual machines having different configurations
US8245022B2 (en) Method and system to support ISCSI boot through management controllers
US8892700B2 (en) Collecting and altering firmware configurations of target machines in a software provisioning environment
US8332496B2 (en) Provisioning of operating environments on a server in a networked environment
US8316224B2 (en) Systems and methods for tracking a history of changes associated with software packages and configuration management in a computing system
US8402123B2 (en) Systems and methods for inventorying un-provisioned systems in a software provisioning environment
US8443361B2 (en) Systems and methods for tracking a history of changes associated with software packages in a computing system
US8799890B2 (en) Generating a version identifier for a computing system based on software packages installed on the computing system
US20100217944A1 (en) Systems and methods for managing configurations of storage devices in a software provisioning environment
US20090222806A1 (en) Methods and systems for incrementally updating a software appliance
US20100050169A1 (en) Methods and systems for providing remote software provisioning to machines
US20110214114A1 (en) Systems and methods for determining compatibility of a software package update using a version identifier
US20090144514A1 (en) Method of automated operating system deployment for a network of multiple data processors
FR2899704A1 (fr) Systeme et procede pour un systeme d'exploitation automatise .
FR2907929A1 (fr) Methode et procede pour l'utilisation d'un environnement de preinstallation commun pour des systemes d'exploitation heterogenes.
CA2526702A1 (fr) Systeme et procede de gestion et de signalisation de systemes eloignes
US10331427B2 (en) Capturing and deploying an operation system in a computer environment
CN110908753A (zh) 一种智能融合的云桌面服务器、客户端及系统
FR2860894A1 (fr) Procede pour utiliser des indicateurs de fonction afin de determiner la compatibilite entre des revisions du bios et du materiel installe pendant une mise a jour de la memoire flash
US20210141632A1 (en) Automated software patching for versioned code
US20110296395A1 (en) Systems and methods for generating client qualification to execute package update manager

Legal Events

Date Code Title Description
ST Notification of lapse

Effective date: 20110331