Forum Linux.général probleme de compréhension sur l'alignement.

Posté par  . Licence CC By‑SA.
Étiquettes : aucune
0
12
sept.
2019

bonjour à tous,

voila si j'ai

struct A{
    int m_value ;
    char c;
}

struct B{
    int m_value;
    char c;
}__attribute__((packed))

B aura une taille de 5 octets alors que la structure de A aura une taille de 8 octets. Le compilateur rajoute des octets de padding mais pourquoi?

sur un pc 64 bits, le bus de donné et de 128 bits, donc on peut recupérer a chaque coup d'horloge jusqu'a 16 octets de mémoire. Donc si mon processus a (…)

Forum Linux.général que se passe t'il quand je communique avec des socket en localhost

Posté par  . Licence CC By‑SA.
Étiquettes : aucune
0
17
sept.
2019

Bonjour,

si par exemple l'adresse Ip du serveur sur lequel je veux transmettre un message est 127.0.0.1 avec un port = 60000. Des que j'envoie un message, le noyau va envoyer le message au périphérique de ma carte réseau, puis ensuite celle ci va regarder sur quelle interface elle veut envoyer le message, dans notre cas l'interface réseau est 'lo' car je veux envoyer le message à l'adresse IP 127.0.0.1. Ensuite cette meme interface recoit mon message, elle va vérifier (…)

Forum Programmation.c langage C : pourquoi on ne peut pas allouer la taille d'un tableau pendant l'exécution du programme?

Posté par  . Licence CC By‑SA.
Étiquettes : aucune
0
12
sept.
2019

bonjour à tous,

si j'ai le code suivant :

void f( int size )
{
    int tab[size];
    ...
}

Le compilateur va retourner une erreur, pourtant en assembleur il est tres facile de réaliser le code ci dessus :
:
push rbp
mov rbp, rsp
sub rsp, eax //avec eax = size

pourquoi en C je ne peux donc pas faire ca. Est ce juste une convention ou alors il y a une raison derriere tout ca ?

Merci d'avance (…)

Forum Programmation.c++ try catch et sigsegv

Posté par  . Licence CC By‑SA.
Étiquettes : aucune
0
8
fév.
2021

Bonjour à tous,

voila je m'interroge sur le fonctionne du try catch. Est ce que ca utilise l' appelle systeme sigaction qui permet d'attraper un signal. Si le signal et SIGSEGV alors on saute dans une méthode handler. Puis on retourne à l'instruction suivant apres le try..catch ? Le compilateur C++ gere donc l'implémentation automatique du handler pour attraper le signal sigsegv ?

autre question :
J'ai souvent vu dans certain code assez bien fait (comme Qt) le systeme de (…)

Forum Linux.noyau server X et frame buffer.

Posté par  . Licence CC By‑SA.
Étiquettes : aucune
0
29
juil.
2019

Bonjour à tous,

voila je sais qu'en absence de noyau on peut avec un petit programme fait maison (qui remplace le noyau) afficher directement du code ascii sur notre écran via le frame buffer.
On peut dirrectement communiquer avec la carte vidéo via l'adresse 0x000B8000. Mais on ne peut afficher que du code ascii, je n'ai rien vu pour afficher des lignes droites, ou juste un point au milieux de l'écran.
Peut on réaliser ce genre de chose via le (…)

Forum Linux.débutant fichier corrompu

Posté par  . Licence CC By‑SA.
Étiquettes : aucune
0
15
oct.
2018

Bonjour,

Je ne comprend pas pourquoi le fait de retirer une clé USB sans l'avoir démonté peut corrompre le système de fichier.

Imaginons que je connecte ma clé usb. J'ai dans le répertoire /dev : sdb et sdb1 qui apparaissent, avec une partie de sdb1 qui représente les méta données (nom du fichier, inode…) et l'autre partie de sdb1 qui représente les données. Si je ne crée pas de nouveau fichier dans ma clé USB alors les méta données de (…)

Forum Linux.général probleme avec la commande ls | file

Posté par  . Licence CC By‑SA.
Étiquettes : aucune
0
10
fév.
2019

Bonjour,

j'ai lancé sur un terminal la commande : ls | file
donc je devrais avoir pour chaque fichier dans le répertoire courant avoir le type de fichier qu'il s'agit, or le terminal me renvoie le message d'erreur : Usage: file …

Avez vous une idée du probleme.

J'ai d’ailleurs essayé la commande echo fichier.txt | file
et ca ne marche toujours pas

Merci d'avance pour votre aide

Forum Linux.général mon programme n'arrive pas a trouver la lib

Posté par  . Licence CC By‑SA.
Étiquettes : aucune
0
8
mai
2019

Bonjour,

voila j'ai téléchargé un programme nommé sokoban venant du site openClassroom. Lorsque je lance le programme, le linker me dit: "./sokoban: error while loading shared libraries: libSDL-1.2.so.0: cannot open shared object file: No such file or directory"

pourtant j'ai bien installé la libSDL-1.2.so.

j'ai fait un ldd sokoban et j'ai :
linux-gate.so.1 (0xf7fb9000)
libSDL-1.2.so.0 => not found
libpthread.so.0 => /lib/i386-linux-gnu/libpthread.so.0 (0xf7f68000)
libSDL_image-1.2.so.0 => not found
libc.so.6 => /lib/i386-linux-gnu/libc.so.6 (0xf7d8c000)
/lib/ld-linux.so.2 (0xf7fbb000)

donc effectivement il ne trouve pas libSDL-1.2.so.0 et (…)

Forum Linux.général impossible de trouver le port du server X

Posté par  . Licence CC By‑SA.
Étiquettes : aucune
0
18
juin
2019

Bonjour,

D'apres ce que j'ai compris, tous les programmes qui souhaitent afficher graphiquement des interfaces doivent se connecter en TCP sur le port 6000 en localhost pour communiquer avec le server X.

J'ai donc testé les ports utilisés en localhost via la commande :

nmap 127.0.0.1 -p-

et le programme me retourne

PORT STATE SERVICE
22/tcp open ssh
139/tcp open netbios-ssn
445/tcp open microsoft-ds
631/tcp open ipp
3306/tcp open mysql
50200/tcp open unknown
50201/tcp open unknown
50202/tcp open unknown

Or (…)

Forum Linux.général afficher une fenetre sur une fenetre avec la lib X11

Posté par  . Licence CC By‑SA.
Étiquettes : aucune
0
25
juin
2019

Bonjour,

je souhaite afficher une fenetre sur une fenetre parent. Mais elle n’apparaît pas alors que le background est différent.

Je vous montre mon code :

    #include <X11/Xlib.h> 
    #include <unistd.h>  
    #include <stdio.h>
    #define NIL (0)      

    void main()
    {
          // Open the display

          Display *dpy = XOpenDisplay(NIL);

          int blackColor = BlackPixel(dpy, DefaultScreen(dpy));
          int whiteColor = WhitePixel(dpy, DefaultScreen(dpy));

          // Create the windows

          Window w =
(…)

Forum Linux.général question sur systemd

Posté par  . Licence CC By‑SA.
Étiquettes : aucune
0
29
juin
2019

Bonjour à tous,

voila j'ai quelques interrogation sur ce que j'ai compris de systemd.

systemd va pendant son exécution regarder les fichiers de configuration dans le repertoire /etc/systemd/system/ et dans /lib/systemd/system (alors pourquoi il y a deux endroits ?) puis va regarder ce qu'il doit faire. Si je prend l'exemple du fichier de configuration rc-locale.service :

[Unit]
Description=/etc/rc.local Compatibility
Documentation=man:systemd-rc-local-generator(8)
ConditionFileIsExecutable=/etc/rc.local
After=network.target

[Service]
Type=forking
ExecStart=/etc/rc.local start
TimeoutSec=0
RemainAfterExit=yes
GuessMainPID=no

on voit que systemd va lancer le script /etc/rc.local, dans mon (…)

Forum Linux.général probleme pour désactiver au démarrage gdm

Posté par  . Licence CC By‑SA.
Étiquettes : aucune
0
6
juil.
2019

bonjour à tous,

voila je ne veux plus que gdm se lance au démarrage. Je me suis donc mis en root et j'ai lancé la commande :
systemctl disable gdm.service

mais quand je fais ensuite
systemctl status gdm.service

le terminal me renvoie :
● gdm.service - GNOME Display Manager
Loaded: loaded (/lib/systemd/system/gdm.service; static; vendor preset: enabled)
Active: active (running) since Sat 2019-07-06 21:27:05 CEST; 4min 24s ago
Main PID: 1113 (gdm3)
Tasks: 3 (limit: 4915)
CGroup: /system.slice/gdm.service
└─1113 /usr/sbin/gdm3

il (…)

Forum Linux.général récupérer l'image de ma webcam avec /dev/input

Posté par  . Licence CC By‑SA.
Étiquettes : aucune
0
9
juil.
2019

bonjour à tous,

voila je viens de découvrir /dev/input, et je trouve ca génial de pouvoir lire le clavier ou la souris avec un simple read. Dans /dev/input j'ai un event qui correspond à ma webcam. j'ai donc envie de pouvoir lire le flux video avec le read (etafficher avec opencv l'image par exemple). Le probleme est qu'en paramètre de mon read je donne en argument une structur input_event.
Or le probleme est que la valeur retournée (value) est sur (…)

Forum Linux.général probleme avec ioctl et rtc

Posté par  . Licence CC By‑SA.
Étiquettes : aucune
0
12
juil.
2019

Bonjour,

voila je dois créer une alarme de 30 seconde via rtc. J'ai donc autorisé l'alarme puis initialisé l'alarme a 30 secondes. Le probleme et que je reste bloqué dans mon read() comme si l'alarme ne déclenchait aucune interruption. Pourtant dans le man il est bien écrit que l'alarme génere une interruption, et il me semble que j'ai bien respecté la documentation.

Je vous montre mon code :

    #include <stdio.h>
    #include <stdlib.h>
    #include <unistd.h>
    #include <sys/types.h>
    #include <sys/stat.h>
    #include <unistd.h>
(…)

Forum Programmation.autre aide en assembleur quand je lance objdump -M intel -DTCs ./a.out

Posté par  . Licence CC By‑SA.
Étiquettes : aucune
0
21
juil.
2019

Bonjour à tous,

Je m'interesse depuis peu à l'assembleur grace à la belle commande objdump. Néanmoins je tombe sur quelques problemes de compréhension au niveau assembleur et j'aurais bien besoin de vos lumieres.

Voici l'extrait de code :

    0000000000000540 <_start>:
     540:   31 ed                   xor    ebp,ebp
     542:   49 89 d1                mov    r9,rdx
     545:   5e                      pop    rsi
     546:   48 89 e2                mov    rdx,rsp
     549:   48 83 e4 f0             and    rsp,0xfffffffffffffff0
     54d:   50                      push   rax
     54e:   54                      push   rsp
     54f:   4c 8d 05
(…)