IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Assembleur Discussion :

Temps d'accès à des données dans un fichier


Sujet :

Assembleur

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 13
    Points : 11
    Points
    11
    Par défaut Temps d'accès à des données dans un fichier
    Bonjour

    Je travailles sur un programme COM, sous DOS, avec de nombreux accès disques.

    Parfois, j'utilise l'Int 21h / AH=42h pour déplacer le pointeur de quelques caractères seulement (souvent à partir du début du fichier).

    Pour le lire avec AH=3Fh, tout de suite après... Serait-ce plus rapide de lire directement le fichier à partir du début, quite à lire quelques octets supplémentaires et non utiles ?

    Surtout qu'il ne s'agit pas d'en lire énormément, juste 9 octets me sont utiles sur chacuns de ces fichiers !

    Qu'en pensez-vous :

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 19
    Points : 16
    Points
    16
    Par défaut Re: Temps d'Interruptions (Acces Disque DOS)
    Bonsoir,

    Je suis navré, je ne t'apporte malheureusement pas de réponse.

    Citation Envoyé par TONIAPEL
    Je travailles sur un programme COM, sous DOS, avec de nombreux accès disques.
    En fait je cherche de la doc là-dessus depuis un certain temps (cf post assez récent sur les fichiers .COM).
    J'ai trouvé quelques liens forts interressants, mais je serai ravi si tu pouvais me fournir d'autres références.

    J'accepte tout ce qui se rapporte aux fichier .com ; sur lesquels j'ai beaucoup de mal à trouver de la doc.
    Merci par avance,
    B.

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    842
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 842
    Points : 696
    Points
    696
    Par défaut
    Si tu lis 9 octets, dee toute facon, ca ne dois pas être trrès long, pourquoi chercher a optimiser une lecture de 9 octets sur un fichier ? ou alors j'ai pas compris la questin

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 13
    Points : 11
    Points
    11
    Par défaut
    En fait, ca dépend surtout du temps d'execution de l'interruption de déplacement du pointeur AH=42h !

    De plus, je sais qu'un disque se décompose en blocs d'au moins 512 octets, n'est-ce pas : Si c'est le cas, peut-être qu'un disque ne peut être lu que par blocs de 512 : Le DOS ne copiant à l'offset voulu que les octets demandés !

    A ce compte là, dès l'instant qu'une lecture ne dépasse pas les 512, et si de plus cette lecture se fait à partir du début du fichier, la vitesse serait peut-être très proche d'un accès disque sur 1 seul de ces blocs :

    Si l'Int AH=42h nécessite un accès disque, il serait donc préférable ne pas l'executer pour si peu :



    Effectivement, c'est sans doute chipoter pour quelques microsecondes, mais je suis du genre perfectionniste. Et pis c'est toujours bon à savoir

  5. #5
    Responsable Pascal, Lazarus et Assembleur


    Avatar de Alcatîz
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Mars 2003
    Messages
    7 937
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2003
    Messages : 7 937
    Points : 59 416
    Points
    59 416
    Billets dans le blog
    2
    Par défaut
    Bonjour !

    Il est certain qu'en matière de performances pures, il sera plus rapide de n'effectuer qu'une seule lecture depuis le début du fichier puis d'extraire tes 9 octets en mémoire que de déplacer le pointeur de fichier puis d'effectuer la lecture de tes 9 octets.

    C'est toujours une bonne idée d'essayer d'optimiser ses programmes, surtout dans le cas d'une action répétitive.
    Règles du forum
    Cours et tutoriels Pascal, Delphi, Lazarus et Assembleur
    Avant de poser une question, consultez les FAQ Pascal, Delphi, Lazarus et Assembleur
    Mes tutoriels et sources Pascal

    Le problème en ce bas monde est que les imbéciles sont sûrs d'eux et fiers comme des coqs de basse cour, alors que les gens intelligents sont emplis de doute. [Bertrand Russell]
    La tolérance atteindra un tel niveau que les personnes intelligentes seront interdites de toute réflexion afin de ne pas offenser les imbéciles. [Fiodor Mikhaïlovitch Dostoïevski]

  6. #6
    Membre habitué
    Avatar de TangiX
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    139
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 139
    Points : 168
    Points
    168
    Par défaut
    Les accés au disque lise par secteur (bloc de 512 octets)
    de plus le système fat utilise des clusters qui sont composé de plusieurs secteurs (selon la taille du disque)
    win et dos lise par cluster donc et place celui-ci dans un buffer lisible par l'utilisateur (le prog)
    donc inutile de sauter 9 octet pour commancer une lecture puisque l'accés au disque se fait par cluster

    ciao

    ps recherche doc urgente sur la FAT32X (surtout le X)
    g rien sur google et copernic et suis condamné a LinuX
    merci...

Discussions similaires

  1. récupérer des données dans un fichier
    Par pymouse dans le forum Langage
    Réponses: 7
    Dernier message: 19/06/2006, 17h43
  2. [VB6]enregistrer des données dans un fichier
    Par tchinette42 dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 19/04/2006, 18h55
  3. Réponses: 2
    Dernier message: 16/01/2006, 19h34
  4. [XML] stocker des données dans un fichier XML
    Par R3iTt0R dans le forum XML/XSL et SOAP
    Réponses: 5
    Dernier message: 27/05/2005, 16h51
  5. Réponses: 3
    Dernier message: 22/02/2004, 20h09

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo