Maison Opération et maintenance exploitation et maintenance Linux De quels fichiers Linux o et a disposent-ils ?

De quels fichiers Linux o et a disposent-ils ?

Nov 10, 2022 pm 07:16 PM
linux

Sous Linux, le fichier ".o" fait référence au fichier cible, c'est-à-dire le fichier informatique qui stocke le code cible ; le fichier cible contient le code machine (qui peut être directement exécuté par le processeur central de l'ordinateur) et le les données utilisées par le code lors de son exécution. Des informations de débogage supplémentaires sont également incluses. Le fichier ".a" fait référence à un fichier de bibliothèque statique, ce qui signifie que la fonction ou le processus à appeler est lié au fichier exécutable et devient une partie du fichier exécutable. Le code de la fonction appelée par le lien dynamique n'est pas copié dans le fichier. fichier exécutable de l'application, mais ajoute les informations de description de la fonction appelée.

De quels fichiers Linux o et a disposent-ils ?

L'environnement d'exploitation de ce tutoriel : système linux7.3, ordinateur Dell G3.

o est un objet, qui est équivalent au fichier obj compilé sous Windows, communément appelé fichier cible

a est archive, qui est équivalent au fichier lib compilé sous Windows VC, communément appelé fichier de bibliothèque statique  ; plusieurs .a peuvent être liés pour générer un fichier exécutable exe. Le fichier

.o est un fichier de lien, .un fichier de bibliothèque statique est généré par le fichier .o et sert de programme externe de bibliothèque pour fournir des fonctions et des interfaces. Générez un fichier .o.

Le fichier o (fichier objet) sous Linux

Le fichier objet (fichier objet) est un fichier informatique qui stocke le code cible. Il est souvent "appelé" fichiers binaires (binaries). Le fichier objet contient du code machine (qui peut être exécuté directement par le processeur central de l'ordinateur) et des données utilisées par le code lors de son exécution, telles que des informations de relocalisation, telles que la table des symboles du programme (noms des variables et des fonctions) utilisée pour la liaison ou le débogage. , en plus de Inclut des informations de débogage supplémentaires.

Il existe 3 types de formulaires de fichiers objets sous Linux :

Fichier objet exécutable, fichier objet déplaçable et fichier objet partagé. Il existe également des fichiers correspondants appelés fichiers exécutables, fichiers objets et bibliothèques partagées. Ils ont simplement des termes différents et font référence à la même chose.

Fichier objet exécutable : contient du code binaire et des données et peut être exécuté directement en mémoire.

Fichier objet relocalisable : contient du code binaire et des données, qui peuvent être combinés avec d'autres fichiers objets relocalisables lors de la compilation pour créer un fichier objet exécutable.

Fichier objet partagé : il s'agit d'un fichier objet spécial déplaçable qui peut être chargé dynamiquement en mémoire et lié pendant le chargement ou l'exécution.

En fait, les compilateurs et les assembleurs génèrent des fichiers objets déplaçables (y compris des fichiers objets partagés). L'éditeur de liens génère un fichier objet exécutable.

Format de fichier objet sous Linux :

En raison des fichiers intermédiaires compilés (.obj sous Windows et .o sous Linux), des bibliothèques de liens dynamiques et des bibliothèques de liens statiques (.lib.dll sous Windows et Linux .a. donc) sous fichier exécutable, le contenu et la structure sont similaires à ceux du fichier exécutable, il est donc généralement stocké dans le même format de fichier que le fichier exécutable.

Le fichier a (fichier de bibliothèque statique) sous Linux

.a est un fichier de bibliothèque de liens statiques dans le système LINUX.

La liaison dite statique fait référence au fait de lier la fonction ou le processus à appeler dans le fichier exécutable et de devenir une partie du fichier exécutable. Lorsque plusieurs programmes appellent la même fonction, il y aura plusieurs copies de la fonction dans la mémoire, gaspillant ainsi de précieuses ressources mémoire. Les fichiers .so sont des fichiers de bibliothèque partagés (liés dynamiquement). Le code de fonction appelé par liaison dynamique n'est pas copié dans le fichier exécutable de l'application, mais seules les informations de description de la fonction appelée (souvent des informations de relocalisation) y sont ajoutées. Uniquement lorsque l'application est chargée Lorsque la mémoire commence à fonctionner, sous la gestion du système d'exploitation, une relation de lien est établie entre le programme d'application et le .so correspondant.

.un fichier est une combinaison de plusieurs fichiers .o. Le fichier .o est un fichier objet et son contenu est constitué d'instructions exécutables par machine telles que 01. Lorsque le programme doit être exécuté, il doit être lié. La liaison consiste à lier plusieurs fichiers .o dans un fichier exécutable. .

Recommandations associées : "Tutoriel vidéo Linux"

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Quatre façons d'implémenter le multithreading dans le langage C Quatre façons d'implémenter le multithreading dans le langage C Apr 03, 2025 pm 03:00 PM

Le multithreading dans la langue peut considérablement améliorer l'efficacité du programme. Il existe quatre façons principales d'implémenter le multithreading dans le langage C: créer des processus indépendants: créer plusieurs processus en cours d'exécution indépendante, chaque processus a son propre espace mémoire. Pseudo-Multithreading: Créez plusieurs flux d'exécution dans un processus qui partagent le même espace mémoire et exécutent alternativement. Bibliothèque multi-thread: Utilisez des bibliothèques multi-threades telles que PTHEADS pour créer et gérer des threads, en fournissant des fonctions de fonctionnement de thread riches. Coroutine: une implémentation multi-thread légère qui divise les tâches en petites sous-tâches et les exécute tour à tour.

Comment ouvrir web.xml Comment ouvrir web.xml Apr 03, 2025 am 06:51 AM

Pour ouvrir un fichier web.xml, vous pouvez utiliser les méthodes suivantes: Utilisez un éditeur de texte (tel que le bloc-notes ou TextEdit) pour modifier les commandes à l'aide d'un environnement de développement intégré (tel qu'Eclipse ou NetBeans) (Windows: Notepad web.xml; Mac / Linux: Open -A TextEdit web.xml)

L'interprète Python peut-il être supprimé dans le système Linux? L'interprète Python peut-il être supprimé dans le système Linux? Apr 02, 2025 am 07:00 AM

En ce qui concerne le problème de la suppression de l'interpréteur Python qui est livré avec des systèmes Linux, de nombreuses distributions Linux préinstalleront l'interpréteur Python lors de l'installation, et il n'utilise pas le gestionnaire de packages ...

À quoi sert le mieux le Linux? À quoi sert le mieux le Linux? Apr 03, 2025 am 12:11 AM

Linux est mieux utilisé comme gestion de serveurs, systèmes intégrés et environnements de bureau. 1) Dans la gestion des serveurs, Linux est utilisé pour héberger des sites Web, des bases de données et des applications, assurant la stabilité et la fiabilité. 2) Dans les systèmes intégrés, Linux est largement utilisé dans les systèmes électroniques intelligents et automobiles en raison de sa flexibilité et de sa stabilité. 3) Dans l'environnement de bureau, Linux fournit des applications riches et des performances efficaces.

Comment est la compatibilité Debian Hadoop Comment est la compatibilité Debian Hadoop Apr 02, 2025 am 08:42 AM

Debianlinux est connu pour sa stabilité et sa sécurité et est largement utilisé dans les environnements de serveur, de développement et de bureau. Bien qu'il y ait actuellement un manque d'instructions officielles sur la compatibilité directe avec Debian et Hadoop, cet article vous guidera sur la façon de déployer Hadoop sur votre système Debian. Exigences du système Debian: Avant de commencer la configuration de Hadoop, assurez-vous que votre système Debian répond aux exigences de fonctionnement minimales de Hadoop, qui comprend l'installation de l'environnement d'exécution Java (JRE) nécessaire et des packages Hadoop. Étapes de déploiement de Hadoop: Télécharger et unzip Hadoop: Téléchargez la version Hadoop dont vous avez besoin sur le site officiel d'Apachehadoop et résolvez-le

Debian Strings est-il compatible avec plusieurs navigateurs Debian Strings est-il compatible avec plusieurs navigateurs Apr 02, 2025 am 08:30 AM

"Debianstrings" n'est pas un terme standard, et sa signification spécifique n'est pas encore claire. Cet article ne peut pas commenter directement la compatibilité de son navigateur. Cependant, si "DebianStrings" fait référence à une application Web exécutée sur un système Debian, sa compatibilité du navigateur dépend de l'architecture technique de l'application elle-même. La plupart des applications Web modernes se sont engagées à compatibilité entre les navigateurs. Cela repose sur les normes Web suivantes et l'utilisation de technologies frontales bien compatibles (telles que HTML, CSS, JavaScript) et les technologies back-end (telles que PHP, Python, Node.js, etc.). Pour s'assurer que l'application est compatible avec plusieurs navigateurs, les développeurs doivent souvent effectuer des tests croisés et utiliser la réactivité

Dois-je installer un client Oracle lors de la connexion à une base de données Oracle à l'aide de Go? Dois-je installer un client Oracle lors de la connexion à une base de données Oracle à l'aide de Go? Apr 02, 2025 pm 03:48 PM

Dois-je installer un client Oracle lors de la connexion à une base de données Oracle à l'aide de Go? Lorsque vous développez GO, la connexion aux bases de données Oracle est une exigence commune ...

See all articles