FR2936327A1 - Procede de telechargement d'un programme .net et dispositif pour celui-ci - Google Patents

Procede de telechargement d'un programme .net et dispositif pour celui-ci Download PDF

Info

Publication number
FR2936327A1
FR2936327A1 FR0956453A FR0956453A FR2936327A1 FR 2936327 A1 FR2936327 A1 FR 2936327A1 FR 0956453 A FR0956453 A FR 0956453A FR 0956453 A FR0956453 A FR 0956453A FR 2936327 A1 FR2936327 A1 FR 2936327A1
Authority
FR
France
Prior art keywords
information
class
parameter
function
net
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.)
Granted
Application number
FR0956453A
Other languages
English (en)
Other versions
FR2936327B1 (fr
Inventor
Zhou Lu
Huazhang Yu
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.)
Feitian Technologies Co Ltd
Original Assignee
Feitian Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Feitian Technologies Co Ltd filed Critical Feitian Technologies Co Ltd
Publication of FR2936327A1 publication Critical patent/FR2936327A1/fr
Application granted granted Critical
Publication of FR2936327B1 publication Critical patent/FR2936327B1/fr
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/34Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
    • G06Q20/355Personalisation of cards for use
    • G06Q20/3552Downloading or loading of personalisation data
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F7/00Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
    • G07F7/08Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
    • G07F7/10Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means together with a coded signal, e.g. in the form of personal identification information, like personal identification number [PIN] or biometric data
    • G07F7/1008Active credit-cards provided with means to personalise their use, e.g. with PIN-introduction/comparison system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators

Abstract

L'invention concerne un procédé de téléchargement d'un programme .Net et un dispositif pour celui-ci, concernant le domaine de la technologie informatique. Le procédé comprend : l'extraction d'informations de classe, paramètre et fonction, et un corps correspondant à la fonction provenant d'une catégorie sauf pour des informations de fichier exécutable standards dans un fichier exécutable compilé par un programme .Net ; la construction d'une table ayant les informations extraites de classe, paramètre et fonction, et le classement des informations ; la modification des informations correspondantes du corps conformément au jeton classé des informations ; le téléchargement de la table et du corps modifié sur une carte .Net. Le dispositif comprend un module d'extraction, un module de construction, un module de modification et un module de téléchargement. La présente invention réduit la redondance du fichier exécutable de programme .Net, économise le stockage d'une carte .Net et renforce la vitesse de téléchargement d'une carte .Net et de mise en oeuvre d'un programme .Net.

Description

PROCEDE DE TELECHARGEMENT D'UN PROGRAMME .NET ET DISPOSITIF POUR CELUI-CI
DOMAINE DE L'INVENTION
La présente invention concerne le domaine de la technologie informatique et plus particulièrement, un procédé de téléchargement d'un programme .Net et un 5 dispositif destiné à celui-ci.
ARRIERE-PLAN TECHNOLOGIQUE DE L'INVENTION
En tant que nouvelle génération de plate-forme technique de Microsoft, .Net est 10 une nouvelle plate-forme de développement interlangage ayant pour base Internet, qui se conforme à la tendance de l'industrie des logiciels dans les aspects tels qu'informatique distribué, développement orienté composant ou application orientée entreprise, logiciel en tant que service et développement centré sur le Web. Bien que .Net ne soit pas un langage de développement, la plate-forme de 15 développement de .Net supporte de multiples langages de développement, tels que C#, C++, Visual Basic, et Jscript.
Avec une dimension similaire à une carte de visite normale, une carte à puce intelligente est une carte en matière plastique contenant une puce de silicium 20 ayant un diamètre d'environ 1 cm, et ayant pour fonction de mémoriser des informations et de faire des calculs complexes. Les cartes à puce sont largement utilisées dans des cartes téléphoniques, cartes bancaires, cartes d'identification d'identité, et dans de nombreux domaines tels que les téléphones mobiles et la télévision prépayée. Une carte à puce est considérée comme le plus petit 25 ordinateur au monde par son intégration d'un microprocesseur, d'une unité de stockage et d'entrée/sortie sur la puce de la carte à puce. De plus, avec un mécanisme de contrôle de sécurité important, le programme de contrôle de sécurité est fixé sur une mémoire morte (ROM) qui fournit une garantie fiable de copie limitée et de lecture/écriture de protection de mot de passe. Comparée à 30 une carte magnétique générale, la carte à puce a de nombreux avantages tels qu'une capacité de stockage massive et des fonctions renforcées par l'utilisation de microtraitements.
Une carte .Net est une carte à puce à microprocesseur comprenant une machine virtuelle .Net où des programmes .Net peuvent être exécutés. Une machine virtuelle peut être vue comme une émulation de logiciel d'une machine ayant un matériel tel qu'un processeur, une mémoire et un registre, par lequel diverses instructions peuvent être émulées. Il n'y a pas d'exigences spécifiques pour l'environnement d'exécution par un logiciel s'exécutant sur la machine ; par conséquent la machine virtuelle est transparente pour les programmes s'exécutant sur celle-ci. Par exemple, une machine virtuelle x86 émule un environnement d'exécution d'instructions et programmes x86, et une machine virtuelle c51 émule un environnement d'exécution d'instructions et programmes c51. La carte .Net appelle des classes et des fonctions dans une bibliothèque de classes standards au moment de l'exécution des programmes d'application.
Bien que la carte .Net ait une fonction forte, la carte .Net a encore une limite pour l'espace de mémorisation et la vitesse de traitement au contraire de l'ordinateur. Par exemple, avant d'effectuer un programme dans la carte .Net, le programme doit être téléchargé sur la carte .Net. La plupart du temps la dimension d'un fichier exécutable est supérieure à 10K, ce qui met une pression importante sur la carte .Net ayant un espace de mémorisation limité. Et même si le programme est téléchargé sur la carte .Net, plus la dimension du programme est grande, plus l'analyse du programme par le chargeur est compliquée. Ceci amène plus de difficultés pour la mise en oeuvre du programme par la carte .Net.
RESUME DE L'INVENTION Afin d'accroître la vitesse de chargement d'une carte .Net et de mettre en oeuvre un programme .Net, la présente invention vise un procédé pour télécharger un programme .Net comprenant : - l'extraction d'informations de classe, de paramètre et de fonction, et un corps correspondant à la fonction à partir d'une catégorie sauf pour des informations de fichier exécutable standard dans un fichier exécutable compilé par un programme .Net ; - la construction d'une table ayant les informations extraites de classe, paramètre, et fonction, et le classement des informations ; - la modification des informations correspondantes du corps conformément au jeton classé des informations ; - le téléchargement de la table et du corps modifié sur une carte .Net.
En particulier, une modification d'informations correspondantes du corps conformément au jeton classé des informations consiste : - à déterminer si le fichier exécutable est compilé sur la base d'une bibliothèque de classes standards Microsoft ou une bibliothèque de classes de carte .Net ; - si le fichier exécutable est compilé sur la base d'une bibliothèque de classes standards Microsoft, à supprimer de la table les informations de classe, paramètre et fonction qui ne sont pas supportées par la carte .Net, et à reclasser les informations restées dans la table, et modifier des informations correspondantes du corps conformément aux informations supprimées et au jeton reclassé des informations restées dans la table ; - si le fichier exécutable est compilé sur la base d'une bibliothèque de classes de carte .Net, à modifier les informations correspondantes du corps conformément au jeton reclassé des informations.
Les informations de classe comprennent un nom, une portée de résolution et un numéro de classe, et le numéro de paramètre et de fonction inclus dans la classe.
Les informations de paramètre comprennent une portée de résolution de 20 paramètre.
Les informations de fonction comprennent l'écart de la fonction dans une table de métadonnées, un symbole et une liste de paramètres de la fonction.
25 Le corps est un corps de langage intermédiaire.
En particulier, modifier des informations correspondantes du corps conformément aux informations supprimées et au jeton reclassé des informations restées dans la table consiste : 30 - à déterminer si le corps comprend des informations de la classe, du para-mètre et de la fonction identiques aux informations de classe, paramètre et fonction supprimées de la table ; - s'il en est ainsi, à supprimer du corps les informations de la classe, du paramètre et de la fonction, qui sont les mêmes que les informations de 35 classe, paramètre et fonction supprimées de la table, et à modifier le jeton de la classe, du paramètre et de la fonction resté dans le corps pour qu'il devienne un jeton nouvellement reclassé.
Un dispositif de téléchargement de programme .Net comprend : - un module d'extraction adapté pour extraire des informations de classe, paramètre et fonction et un corps correspondant à la fonction à partir d'une catégorie sauf pour des informations de fichier exécutable standard dans un fichier exécutable compilé par un programme .Net ; - un module de construction adapté pour construire une table ayant les informations de classe, paramètre et fonction, et reclasser les informations ; - un module de modification adapté pour modifier des informations correspondante du corps conformément au jeton après que les informations aient été classées par le module de construction ; - un module de téléchargement adapté pour télécharger la table et le corps modifié sur une carte .Net.
Le module de modification comprend de plus : - une unité de détermination adaptée pour déterminer si le fichier exécutable est compilé sur la base d'une bibliothèque de classes standards Microsoft ou une bibliothèque de classes de carte .Net ; - une première unité de modification adaptée pour supprimer de la table les informations de classe, paramètre et fonction qui ne sont pas supportées par la carte .Net, et reclasser les informations restées dans la table, modifier les informations correspondantes du corps conformément aux informations supprimées et au jeton reclassé des informations restées dans la table si l'unité de détermination détermine que le fichier exécutable est compilé sur la base d'une bibliothèque de classes standards Microsoft ; - une seconde unité de modification adaptée pour modifier des informations correspondantes du corps extraites par le module d'extraction conformément au jeton des informations reclassées par le module de construction si l'unité de détermination détermine que le fichier exécutable est compilé sur la base d'une bibliothèque de classes .Net.
L'information de classe comprend un nom, une portée de résolution et un numéro de classe, et le numéro de paramètre et de fonction inclus dans la classe.
Les informations de paramètre comprennent la portée de résolution d'un paramètre.
Les informations de fonction comprennent l'écart de la fonction dans une table de métadonnées, et un symbole et une liste de paramètres de la fonction.
Le corps est un corps de langage intermédiaire.
La première unité de modification comprend de plus : - une sous-unité de suppression adaptée pour supprimer de la table les informations de classe, paramètre et fonction qui ne sont pas supportées par la carte .Net et reclasser les informations restées dans la table si le module de détermination détermine que le fichier exécutable est sur la base d'une bibliothèque de classes standards Microsoft ; - une sous-unité de détermination adaptée pour déterminer si le corps extrait par le module d'extraction comprend des informations de classe, paramètre et fonction identiques aux informations de classe, paramètre et fonction supprimées de la table par la sous-unité de suppression après que la sous-unité de détermination ait reclassé les informations restées dans la table , - une sous-unité de modification adaptée pour supprimer les informations de classe, paramètre et fonction, qui sont les mêmes que les classe, paramètre et fonction supprimés, du corps, et modifier le jeton de la classe, du paramètre et de la fonction restés dans le corps pour qu'il soit le jeton nouvellement reclassé lorsque qu'un résultat déterminé par la sous-unité de détermination est positif Comme décrit ci-dessus, la présente invention fournit une solution qui extrait des informations de classe, paramètre et fonction, et un corps de la fonction à partir d'un fichier exécutable compilé par un programme .Net, et construit une table ayant les informations extraites, supprime de la table les éléments qui ne sont pas supportés par une carte .Net, et ensuite met à jour le contenu du corps conformément à la table et effectue un téléchargement correspondant. La solution réduit la redondance du fichier exécutable de programme .Net, réduit le stockage de la carte .Net et renforce la vitesse de chargement de la carte .Net et la mise en oeuvre du programme .Net.
BREVE DESCRIPTION DES DESSINS
On va maintenant décrire la présente invention en se reportant aux dessins annexés, sur lesquels : - la figure 1 est un ordinogramme représentant un procédé de téléchargement d'un programme .Net selon un mode de réalisation 1, - la figure 2 est un schéma structurel représentant un fichier exécutable compilé par un programme .Net du mode de réalisation 1, - la figure 3 est un schéma structurel représentant des informations de fichier 10 exécutable standard du mode de réalisation 1, - la figure 4 est un schéma structurel représentant un fichier exécutable sauf pour des informations de fichier exécutable standard du mode de réalisation 1 - la figure 5 est un schéma structurel représentant un dispositif de 15 téléchargement de programme .Net d'un mode de réalisation 2.
DESCRIPTION DETAILLEE DE L'INVENTION
Des buts, solutions techniques et avantages de l'invention seront facilement 20 compris en se reportant à la description qui va suivre de modes de réalisation, faite en association avec les dessins annexés.
Le mode de réalisation de la présente invention fournit un procédé pour télécharger un programme .Net, qui comprend l'extraction d'informations de 25 classe, paramètre et fonction et d'un corps correspondant à la fonction à partir d'une catégorie sauf pour des informations de fichier exécutable standard dans un fichier exécutable compilé par un programme .Net ; la construction d'une table avec les informations extraites de classe, paramètre et fonction, et le classement des informations ; la modification des informations correspondantes dans le corps 30 conformément au jeton classé des informations ; le téléchargement de la table et du corps modifié sur une carte .Net. 6 MODE DE REALISATION 1
En se reportant à la figure 1, le mode de réalisation de la présente invention fournit un procédé de téléchargement d'un programme .Net comprenant : Étape 101 : compiler un programme .Net pour obtenir un fichier exécutable.
Généralement, le fichier exécutable comprend des informations de fichier exécutable standard, un code et une table de métadonnées, etc. Par conséquent, 10 des informations de fichier exécutable standard comprennent un en-tête de fichier portable exécutable (PE) standard et une table de section de futilité d'un fichier exécutable. L'en-tête de fichier PE peut identifier que le fichier courant est un fichier exécutable. La table de section de futilité est la table de section d'une source qui n'est pas supportée par la carte .Net. La source peut être la fenêtre de 15 Windows, des icônes, etc. La table de métadonnées comprend tout type de données telles que classe, paramètre et fonction, etc.
Par exemple, le programme .Net est comme suit : { Class MyClass { Public string MyMethod() StringBuilder strb = new StringBuilder(); strb.AppendFormat(" { 0 } { 1 } ","Hello","World!"); return strb.ToStringO; Static Void main() { Application.Run(new MyFormO); 7 { } } } 20 } En se reportant à la figure 2, le fichier exécutable obtenu en compilant le programme .Net ci-dessus comprend des informations de fichier exécutable standard et une table de métadonnées, etc. Par conséquent, les informations de fichier exécutable standard sont indiquées comme sur la figure 3. Le contenu de la figure 4 représente le contenu indiqué dans la figure 2 sauf pour les informations de fichier exécutable standard indiquées dans la figure 3.
Etape 102 : extraire les informations de classe, paramètre et fonction, et un corps correspondant à la fonction à partir d'une catégorie sauf pour des informations de fichier exécutable standard dans le fichier exécutable compilé par un programme .Net.
Par conséquent, les informations de classe comprennent un nom, une portée de résolution et le numéro de la classe, le numéro du paramètre et de la fonction dans la classe, etc. Les informations de paramètre comprennent une portée de résolution de paramètre. Par exemple, le paramètre est un paramètre d'entrée (In style) ou un paramètre de sortie (Out style), etc. Les informations de fonction comprennent l'écart de la fonction dans une table de métadonnées, un symbole et une liste de paramètres d'une fonction, etc. Le symbole de fonction est le type du format de fonction tel qu'un format long ou un format court, etc. Le corps est un corps de langage intermédiaire.
Par exemple, la table de métadonnées TypeRef indiquée dans la figure 4 comprend deux classes : System.Windows.Forms et System.Text.StringBuilder.
Par conséquent pour la classe System.Windows.Forms, l'espace de noms est System.Windows ; le nom est Forms ; la portée de résolution est AssemblyRef00000001. Pour la classe System.Text.StringBuilder de classe, l'espace de noms est System.Text ; le nom est StringBuilder ; la portée de résolution est AssemblyRef00000001.
Etape 103 : construire une table avec les informations extraites de classe, paramètre et fonction, et classer les informations.
Par exemple extraire les informations de la classe System.Windows.Forms et de 35 la classe System.Text.StringBuilder à partir du contenu mentionné sur la figure 4 et construire une table comme suit : Table 1 Nom Espace de noms Portée de résolution Jeton Forms System.Windows AssemblyRef00000001 01000005 StringBuilder System.Text AssemblyRef00000001 01000006 Par conséquent, le jeton de la table 1 est le jeton obtenu en classant la totalité des éléments de la table. Le jeton peut concorder ou ne pas concorder avec le jeton de la classe, du paramètre et de la fonction dans la table de métadonnées. Généralement, ils s'accordent l'un avec l'autre.
Etape 104, déterminer si le fichier exécutable du programme .Net est compilé sur la base de la bibliothèque de classes standards Microsoft ou d'une bibliothèque de classes de carte .Net, si le fichier exécutable est compilé sur la base d'une bibliothèque de classes standards Microsoft, passer à l'étape 105 ; si le fichier exécutable est compilé sur la base d'une bibliothèque de classes de carte .Net, passer à l'étape 108.
Etape 105 : supprimer de la table construite ci-dessus les informations de classe, paramètre et fonction qui ne sont pas supportées par la carte .Net, et reclasser les informations restées dans la table.
Par exemple, la classe System.Windows.Forms de la table 1 est supportée par Windows mais pas supportée par la carte .Net. Donc, la classe System.Windows.Forms est supprimée de la table 1. Ensuite seule la classe System.Text.StringBuilder est restée dans la table. Conformément à la continuité des éléments de la table 1 ; les éléments de la table 1 sont reclassés automatiquement. Le jeton de la classe System.Text.StringBuilder est changé pour devenir 01000005. En conséquence, si l'élément ayant le jeton 01000007 est resté dans la table 1, le jeton sera changé en 01000006. Si l'élément ayant le jeton 01000008 est resté dans la table 1, le jeton sera changé pour devenir 01000007, etc.
Etape 106: modifier les informations correspondantes du corps conformément aux informations supprimées et au jeton reclassé des informations restées dans la table ci-dessus.
Le processus détaillé est comme suit : déterminer si le corps extrait a les mêmes classes, paramètres et fonctions que les classes, paramètres et fonctions supprimés ci-dessus ; s'il en est ainsi, supprimer du corps la classe, le paramètre et la fonction. C'est-à-dire, supprimer la classe, le paramètre et la fonction dans le corps qui ne sont pas supportés par la carte .Net, et modifier le jeton des éléments restés avec le numéro de séquence reclassée en jeton correspondant dans le jeton classé.
Par exemple, le corps de langage intermédiaire (IL) de la classe compilée 10 System.Text.StringBuilder est comme suit : IL 0000: /* 00 1 */nop IL 0001: /* 73 1 (OA)000011 */ newobj instance void [/*23000001*/]System.Text.StringBuilder/*01000006*/::.ctor( /* OA000011 */ IL 0006: /* OA 1 */ stloc.0 IL 0007: /* 06 1 */ ldloc.0 IL 0026: /* 07 1 */ ldloc.1 IL 0027: /* 2A 1 */ ret Modifier le jeton du corps conformément au jeton reclassé dans la table ci-dessus. Le corps de langage intermédiaire IL modifié est comme suit : IL 0000: /* 00 1 */ nop IL 0001: /* 73 1 (OA)000011 */ newobj instance void [/*23000001*/]System.Text.StringBuilder/*01000005*/::.ctor( /* OA000011 */ IL 0006: /* OA 1 */ stloc.0 IL 0007: /* 06 1 */ ldloc.0 IL 0026: /* 07 1 */ ldloc.1 15 IL 0027: /* 2A 1 */ ret Par exemple, après l'opération de suppression ci-dessus dans le code extrait trouvé, le corps a une fonction FUN1 avec le jeton 01000008. Après reclassement des éléments restés dans la table, le jeton de FUN1 est 01000007, puis le jeton de FUN1 dans le corps est modifié pour être 01000007, qui assure que FUN 1 peut être appelée et mise en oeuvre normalement.
Etape 107. télécharger la table opération de suppression effectuée et le corps modifié sur la carte .Net, alors le traitement est terminé.
Etape 108 : modifier les informations correspondantes du corps extrait conformément au jeton reclassé à l'étape 103. Etape 109 : télécharger la table construite à l'étape 103 et le corps modifié sur la carte .Net, alors le traitement est terminé.
MODE DE REALISATION 2
En se reportant à la figure 5, le mode de réalisation de la présente invention fournit un dispositif pour télécharger un programme .Net, qui comprend : - un module d'extraction 501 adapté pour extraire des informations de 20 classe, paramètre et fonction, et un corps correspondant à la fonction à partir d'une catégorie sauf pour des informations de fichier exécutable standards dans un fichier exécutable compilé par le programme .Net ; - un module de construction 502 adapté pour construire une table avec les informations de classe, paramètre et fonction extraites par le module 25 d'extraction 501, et classer les informations ; - un module de modification 503 adapté pour modifier les informations correspondantes du corps extrait par le module d'extraction 501 conformément au jeton après que les informations aient été classées par le module de construction 502 ; 30 - un module de téléchargement 504 adapté pour télécharger la table et le corps modifié par le module de modification 503 sur une carte .Net.
De plus, le module de modification 503 comprend : - une unité de détermination 503a adaptée pour déterminer si le fichier 35 exécutable compilé par un programme .Net est sur la base d'une bibliothèque de classes standards Microsoft ou d'une bibliothèque de classes de carte .Net ; - une première unité de modification 503b adaptée pour supprimer de la table construite par le module de construction 502 les informations de classe, paramètre et fonction qui ne sont pas supportées par la carte .Net, et reclasser les informations restées dans la table, modifier des informations correspondantes du corps extrait par le module d'extraction 501 conformément aux informations supprimées et au jeton reclassé des informations restées dans la table si l'unité de détermination 503a détermine que le fichier exécutable est compilé sur la base d'une bibliothèque de classes standards Microsoft ; de manière correspondante, la table téléchargée par le module de téléchargement 504 est la table opération de suppression effectuée.
Une seconde unité de modification 503c adaptée pour modifier des informations correspondantes du corps extrait par le module d'extraction 501 conformément au jeton des informations classées par le module de construction 502 si l'unité de détermination 503a détermine que le fichier exécutable est compilé sur la base d'une bibliothèque de classes .Net.
Dans le mode de réalisation, les informations de classe comprennent un nom, une 20 portée de résolution et le numéro de classe, et le numéro de paramètre et de fonction.
Dans le mode de réalisation, les informations de paramètre comprennent une portée de résolution du paramètre. Dans le mode de réalisation, les informations de fonction comprennent l'écart de la fonction dans une table de métadonnées, un symbole et une liste de paramètres de la fonction.
30 Dans le mode de réalisation, le corps est un corps de langage intermédiaire.
De plus, la première unité de modification 503b ci-dessus comprend : - une sous-unité de suppression adaptée pour supprimer les informations de classe, paramètre et fonction qui ne sont pas supportées par la carte .Net 35 dans la table construite par le module de construction 502 et reclasser les informations restées dans la table si l'unité de détermination 503a 25 détermine que le fichier exécutable compilé par le programme .Net a pour base une bibliothèque de classes standards Microsoft ; - une sous-unité de détermination adaptée pour déterminer si le corps extrait par le module d'extraction 501 comprend une classe, un paramètre et une fonction identique aux informations de classe, paramètre et fonction supprimées de la table après que la sous-unité de suppression ait reclassé les informations restées dans la table ; - une sous-unité de modification adaptée pour supprimer la classe, le paramètre et la fonction dans le corps extrait par le module d'extraction 501 identique à la classe, le paramètre et la fonction supprimés de la table, et modifier le jeton de la classe, paramètre et fonction restés dans le corps pour qu'il devienne le jeton nouvellement retrié lorsqu'un résultat déterminé par la sous-unité de détermination est positif Le procédé et le dispositif des modes de réalisation de la présente invention fournissent une solution qui extrait des informations de classe, paramètre et fonction, et un corps de la fonction à partir d'un fichier exécutable compilé par un programme .Net et construisent une table avec les informations extraites, suppriment de la table les éléments qui ne sont pas supportés par une carte .Net, et ensuite mettent à jour le contenu du corps conformément à la table et effectuent un téléchargement correspondant. La solution réduit la redondance du fichier exécutable de programme .Net, réduit le stockage de la carte .Net et renforce la vitesse de chargement de la carte .Net et met en oeuvre un programme .Net.
Les modes de réalisation présentement décrits doivent être considérés à tous points de vue comme étant illustratifs et non restrictifs. La portée de l'invention est indiquée par les revendications annexées plutôt que la description qui précède, et toutes les variations qui viendraient à l'esprit et la plage d'équivalents de ceux-ci sont prévues pour être contenues dans celle-ci.

Claims (14)

  1. REVENDICATIONS1. Procédé pour télécharger un programme. Net, dans lequel le procédé comprend : - l'extraction d'informations de classe, paramètre et fonction, et un corps correspondant à la fonction à partir d'une catégorie sauf pour des informations de fichier exécutable standard dans un fichier exécutable compilé par un programme .Net ; - la construction d'une table ayant les informations extraites de classe, 10 paramètre et fonction, et le classement des informations ; - la modification des informations correspondantes du corps conformément au jeton classé des informations ; - le téléchargement de la table et du corps modifiés sur une carte .Net. 15
  2. 2. Procédé selon la revendication 1, dans lequel modifier des informations correspondantes dans le corps conformément au jeton classé des informations consiste : - à déterminer si le fichier exécutable est compilé sur la base d'une bibliothèque de classes standards Microsoft ou une bibliothèque de 20 classes de carte .Net ; - si le fichier exécutable est compilé sur la base d'une bibliothèque de classes standards Microsoft, à supprimer de la table les informations de classe, paramètre et fonction qui ne sont pas supportées par la carte .Net, et à reclasser les informations restées dans la table, et modifier des 25 informations correspondantes du corps conformément aux informations supprimées et au jeton reclassé des informations restées dans la table ; - si le fichier exécutable est compilé sur la base d'une bibliothèque de classes de carte .Net, à modifier les informations correspondantes du corps conformément au jeton reclassé des informations. 30
  3. 3. Procédé selon la revendication 1, dans lequel les informations de classe comprennent un nom, une portée de résolution et un numéro de classe, et le numéro de paramètre et de fonction inclus dans la classe. 35
  4. 4. Procédé selon la revendication 1, dans lequel les informations de paramètre comprennent une portée de résolution de paramètre.
  5. 5. Procédé selon la revendication 1, dans lequel les informations de fonction comprennent l'écart de la fonction dans une table de métadonnées, un symbole et une liste de paramètres de la fonction.
  6. 6. Procédé selon la revendication 1, dans lequel le corps est un corps de langage intermédiaire.
  7. 7. Procédé selon la revendication 2, dans lequel modifier des informations correspondantes du corps conformément aux informations supprimées et au jeton reclassé des informations restées dans la table consiste : - à déterminer si le corps comprend des informations de la classe, du paramètre et de la fonction identiques aux informations de classe, paramètre et fonction supprimées de la table ; - s'il en est ainsi, à supprimer du corps les informations de la classe, du paramètre et de la fonction, qui sont les mêmes que les informations de classe, paramètre et fonction supprimées de la table, et à modifier le jeton de la classe, du paramètre et de la fonction resté dans le corps pour qu'il devienne un jeton nouvellement reclassé.
  8. 8. Dispositif de téléchargement d'un programme .Net, dans lequel le dispositif comprend : - un module d'extraction adapté pour extraire des informations de classe, paramètre et fonction et un corps correspondant à la fonction à partir d'une catégorie sauf pour des informations de fichier exécutable standard dans un fichier exécutable compilé par programme Net ; - un module de construction adapté pour construire une table ayant les informations de classe, paramètre et fonction, et reclasser les informations ; - un module de modification adapté pour modifier des informations correspondantes du corps conformément au jeton après que les informations aient été classées par le module de construction ; - un module de téléchargement adapté pour télécharger la table et le corps modifié sur une carte .Net.
  9. 9. Dispositif selon la revendication 8, dans lequel le module de modification comprend : - une unité de détermination adaptée pour déterminer si le fichier exécutable est compilé sur la base d'une bibliothèque de classes standards Microsoft ou une bibliothèque de classes de carte .Net ; - une première unité de modification adaptée pour supprimer de la table les informations de classe, paramètre et fonction qui ne sont pas supportées par la carte .Net, et reclasser les informations restées dans la table, modifier les informations correspondantes du corps conformément aux informations supprimées et au jeton reclassé des informations restées dans la table si l'unité de détermination détermine que le fichier exécutable est compilé sur la base d'une bibliothèque de classes standards Microsoft ; - une seconde unité de modification adaptée pour modifier des informations correspondantes du corps extraites par le module d'extraction conformément au jeton des informations reclassées par le module de construction si l'unité de détermination détermine que le fichier exécutable est compilé sur la base d'une bibliothèque de classes .Net.
  10. 10. Dispositif selon la revendication 8, dans lequel les informations de classe comprennent un nom, une portée de résolution et un numéro de la classe, et le numéro de paramètre et de fonction inclus dans la classe.
  11. 11. Dispositif selon la revendication 8, dans lequel les informations de paramètre comprennent une portée de résolution de paramètre.
  12. 12. Dispositif selon la revendication 8, dans lequel les informations de fonction comprennent l'écart de la fonction dans une table de métadonnées, un symbole et une liste de paramètres de la fonction.
  13. 13. Dispositif selon la revendication 8, dans lequel le corps est un corps de langage intermédiaire.
  14. 14. Dispositif selon la revendication 9, dans lequel la première unité de modification comprend : - une sous-unité de suppression adaptée pour supprimer dans la table les informations de classe, paramètre et fonction qui ne sont pas supportées par la carte .Net et reclasser les informations restées dans la table si le module de détermination détermine que le fichier exécutable a pour base une bibliothèque de classes standards Microsoft ; - une sous-unité de détermination adaptée pour déterminer si le corps extrait par le module d'extraction comprend des informations de la classe, du paramètre et de la fonction identiques aux informations de classe, paramètre et fonction supprimées de la table par la sous-unité de suppression après que la sous-unité de détermination ait reclassé les informations restées dans la table ; - une sous-unité de modification adaptée pour supprimer du corps les informations de la classe, du paramètre et de la fonction, qui sont les mêmes que celles de la classe, du paramètre et de la fonction supprimés, et modifier le jeton de la classe, du paramètre et de la fonction restés dans le corps pour qu'il soit le jeton nouvellement reclassé lorsqu'un résultat déterminé par la sous-unité de détermination est positif.
FR0956453A 2008-09-24 2009-09-21 Procede de telechargement d'un programme .net et dispositif pour celui-ci Active FR2936327B1 (fr)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 200810222759 CN101382892B (zh) 2008-09-24 2008-09-24 下载.Net程序的方法和装置

Publications (2)

Publication Number Publication Date
FR2936327A1 true FR2936327A1 (fr) 2010-03-26
FR2936327B1 FR2936327B1 (fr) 2014-04-11

Family

ID=40462746

Family Applications (1)

Application Number Title Priority Date Filing Date
FR0956453A Active FR2936327B1 (fr) 2008-09-24 2009-09-21 Procede de telechargement d'un programme .net et dispositif pour celui-ci

Country Status (2)

Country Link
CN (1) CN101382892B (fr)
FR (1) FR2936327B1 (fr)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101719077B (zh) * 2009-12-24 2012-06-27 飞天诚信科技股份有限公司 在.Net程序中注入代码的方法和装置
CN101794221B (zh) * 2009-12-30 2012-08-08 飞天诚信科技股份有限公司 .net文件中引用类型的压缩方法和装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7200842B1 (en) * 1999-02-02 2007-04-03 Sun Microsystems, Inc. Object-oriented instruction set for resource-constrained devices
FR2795835B1 (fr) * 1999-07-01 2001-10-05 Bull Cp8 Procede de verification de transformateurs de codes pour un systeme embarque, notamment sur une carte a puce
CN100462890C (zh) * 2005-06-16 2009-02-18 北京航空航天大学 智能卡安全环境的控制方法
CN100454256C (zh) * 2006-12-25 2009-01-21 北京飞天诚信科技有限公司 一种提高自定义程序运行速度的方法和装置

Also Published As

Publication number Publication date
FR2936327B1 (fr) 2014-04-11
CN101382892B (zh) 2012-04-18
CN101382892A (zh) 2009-03-11

Similar Documents

Publication Publication Date Title
US9703678B2 (en) Debugging pipeline for debugging code
US10015282B2 (en) Context-based selective downloading of application resources
US8949788B2 (en) Building and packaging software
CN103778373B (zh) 病毒检测方法及装置
EP1782191B1 (fr) Procede de chargement d'un logiciel en langage intermediaire oriente objet dans un appareil portatif
EP1585037B1 (fr) Procédé de reconnaissance et de référencement pour accès aux objets dynamiques dans les pages de navigation internet
RU91213U1 (ru) Система автоматического составления описания и кластеризации различных, в том числе и вредоносных, объектов
Macht Live memory forensics on android with volatility
EP3005100A1 (fr) Generation de paquetage composite
WO2014193448A1 (fr) Indexation d'ensemble de ressources
US20140359605A1 (en) Bundle package signing
Pascarella et al. Self-reported activities of android developers
EP2453356B1 (fr) Procédé, programme d'ordinateur et dispositif de sécurisation de code intermédiaire de programmation pour son exécution par une machine virtuelle
Loy et al. Learning Java: An Introduction to Real-World Programming with Java
US7428729B2 (en) Methods, systems, and computer program products for integrating legacy applications into a platform-independent environment
CN113869789A (zh) 一种风险监控的方法、装置、计算机设备及存储介质
FR2936327A1 (fr) Procede de telechargement d'un programme .net et dispositif pour celui-ci
FR2795835A1 (fr) Procede de verification de transformateurs de codes pour un systeme embarque, notamment sur une carte a puce
US8006242B2 (en) Identification of software configuration data
EP3195120A1 (fr) Chargement sélectif d'en-tête(s) précompilé(s) et/ou de leur(s) partie(s)
Deitel et al. Java SE 8 for programmers
FR2931567A1 (fr) Methode de recherche de classe et de fonction basee basee sur une carte .net et carte .net correspondante.
Domínguez-Álvarez et al. ReChan: an automated analysis of Android app release notes to report inconsistencies
WO2003038610A1 (fr) Installation de programme compile notamment dans une carte a puce
EP1337915A1 (fr) Verification formelle notamment d'une machine virtuelle securisee

Legal Events

Date Code Title Description
PLFP Fee payment

Year of fee payment: 8

PLFP Fee payment

Year of fee payment: 9

PLFP Fee payment

Year of fee payment: 10

PLFP Fee payment

Year of fee payment: 11

PLFP Fee payment

Year of fee payment: 12

PLFP Fee payment

Year of fee payment: 13

PLFP Fee payment

Year of fee payment: 14