FR2904709A1 - Dispositif et procedes de mise a jour de micrologiciel - Google Patents
Dispositif et procedes de mise a jour de micrologiciel Download PDFInfo
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 30
- 230000010365 information processing Effects 0.000 claims abstract description 48
- 238000004891 communication Methods 0.000 claims description 12
- 238000012545 processing Methods 0.000 claims description 9
- 230000000295 complement effect Effects 0.000 claims description 8
- 238000013500 data storage Methods 0.000 description 7
- 238000007726 management method Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 238000013070 change management Methods 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000007639 printing Methods 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
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)
- REVENDICATIONS1. 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. 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. 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. 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. 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).
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)
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)
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 |
-
2006
- 2006-07-26 US US11/460,197 patent/US8707297B2/en active Active
-
2007
- 2007-06-15 IE IE20070432A patent/IE20070432A1/en not_active Application Discontinuation
- 2007-06-22 TW TW096122470A patent/TWI384399B/zh active
- 2007-06-26 SG SG200704638-6A patent/SG139636A1/en unknown
- 2007-07-10 DE DE102007032050A patent/DE102007032050A1/de active Pending
- 2007-07-17 GB GB0913439A patent/GB2459989B/en active Active
- 2007-07-17 GB GB0713902A patent/GB2440431B8/en active Active
- 2007-07-19 FR FR0705218A patent/FR2904709A1/fr not_active Withdrawn
- 2007-07-24 CN CNA2007101390546A patent/CN101114233A/zh active Pending
- 2007-07-24 CN CN201310522108.2A patent/CN103559052B/zh active Active
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 |