Forum Programmation.c probleme pour faire un timer précis de l'ordre de la milliseconde

Posté par  . Licence CC By‑SA.
Étiquettes : aucune
2
26
jan.
2022

bonjour à tous,
je souhaite faire un timer via timerfd_create qui reveille mon programme toutes les 1 milliseconde (ms). j'aimerais une erreur que de 10% soit pas plus de 1.1ms. Mon programme à un timer moyen de 1ms (super :) ) mais a parfois des piques à 1,2 ms voir 1,4ms :(

Je l'ai passé en fifo priorité 99, j'ai viré toutes les interruptions venant de mon cpu8 afin d'empecher que mon processus soit interrompu (via /proc/irq/smp_affinity), j'ai bien entendu (…)

Forum Programmation.c Délai pendant l'exécution d'un fwrite

Posté par  (site web personnel) .
Étiquettes :
2
15
déc.
2009
Bonjour,
j'ai un programme qui enregistre sur le disque dur des images en provenances de plusieurs caméras. Il tourne en roue libre, le plus vite possible.

L'enregistrement se fait via la bibliothèque gdk-pixbuf. Je fais un appel à gdk_pixbuf_save, qui enregistre l'image dans le format que j'ai choisi. J'ai accès au code de gestion de ce format graphique (je l'ai écrit), et l'écriture des données se fait via un unique fwrite (mais sans fflush ensuite, mais il est normalement fait (…)

Forum Programmation.c Un noyau tout petit, en C(++)

Posté par  .
Étiquettes :
2
2
mar.
2010
Bonjour forum !

Aujourd'hui, pour apprendre la programmation des systèmes d'exploitation, je cherche un noyau avec seulement le strict minimum, un code compréhensible, et pas trop "spaghetti".
Plutôt pour faire des expérimentations (Test d'ordonnanceur, test de concept, bidouille). En fait, j'aurai bien essayé avec linux, mais sa complexité me décourage (rien que le nombre de fichier dans le dossier "kernel" fait peur, alors...)

Il faut donc que ce noyau remplisse plusieurs conditions: multitâche (même minimal), possibilité d'être exécuté depuis Qemu (…)

Forum Programmation.c Interface /sys pour un programme

Posté par  .
Étiquettes : aucune
2
24
mai
2011

Bonjour,

J'aimerai savoir s'il est possible pour un programme C de créer des fichiers d'interface en lecture ou écriture dans un système de fichier tmpfs, comme le fait le noyau dans le répertoire "/sys", pour pouvoir lire des variables d'un programme, ou piloter le programme.

Une autre solution existe mais un peu plus complexe à réaliser, c'est d'utiliser la mémoire partagée.

Forum Programmation.c Coût d'un accès mémoire.

Posté par  .
Étiquettes : aucune
2
25
juin
2012

Bonjour, voila ça fait plusieurs fois que je me pose cette question, que je fais quelques test sans rien trouver de concluant.
Lorsque vous avez à des calculs relativement simples à faire sur un octet, une fonction pure uint8_t (uint8_t); (qui ne fait pas plus de 20 instructions).
Quelle solution adopter pour la performance dans le cas général :

  • une table ?
  • un (gros) switch case, ça revient revient à mettre la table dans le segment texte mais est-ce que l'accès est plus (…)

Forum Programmation.c [Résolu][Xlib] Window : Comment obtenir une fenêtre à partir de son ID ?

Posté par  .
Étiquettes :
2
4
août
2012

**EDIT : J'ai ma réponse.

En réalité, les variables de type "Window" contiennent des int qui sont en fait les ID que l'on retouve (entre autre) avec xprop, xdotool, wmctrl …**


Bonjour, j'ai réalisé une "surcouche" pour gestionnaire de fenêtre (en bash) ; qui permet de gérer ses fenêtres en tuile, sous n'importe quel gestionnaire de fenêtre.

Mon programme utilise pour le moment xdotool, mais je voudrais m'en passer, et recoder moi même ce dont j'ai besoin :
- redimensionner une (…)

Forum Programmation.c [cherche IDE] pour prgrammer en C

Posté par  .
Étiquettes : aucune
2
16
sept.
2012

Bonjour,
j'imagine que c'est n-ième message de ce genre mais CodeBlock, s'il est complet, me semble trop lourd (il met 30 secondes à se lancer sur mon ordinateur).
Donc j'en cherche un aussi complet (qui s'occupe de mettre les options qui vont bien lors de la compilation par exemple, je crois que c'est vraiment un truc que j'ai pas envie d'apprendre) mais un peu moins lourd.

Ma question donc : qu'utilisez-vous ?

P.S. j'utilise geany aussi pour le html/css tout ça. (…)

Forum Programmation.c Regex et encodage

Posté par  .
Étiquettes : aucune
2
28
sept.
2012

Bonjour,

Voilà, dans mon programme j'utilise la fonction regexec qui prend en argument une chaîne que l'utilisateur entre. Jusque là pas de problème, et ca se passe plutôt bien.

Le problème, c'est que ce programme parse un fichier contenant différents path venant d'un Windows XP, dont certaines parties contiennent des accents. Du coup, ma regex 'Rom.o' ne matche jamais 'Roméo'.

Bon, j'ai fini par saisir que mes noms de paths étaient inscrits dans un encodage de 8bits, alors que mon (…)

Forum Programmation.c Qu'utilisez-vous pour vos tests en C ?

Posté par  . Licence CC By‑SA.
Étiquettes : aucune
2
12
mar.
2015

Bonjour.

Je me remets un peu au C en ce moment (une petite idée qui me trotte dans la tête depuis un moment), et je voulais profiter de l'occasion pour savoir quels outils vous utilisez pour réaliser vos test : tests unitaires, tests d'intégration, etc… Je vous sauraigrén, si dans vos réponses vous indiquiez pourquoi vous avez choisi cet outil, ce que vous aimez, ce que vous n'aimez pas, le contexte dans lequel vous l'utilisez, les contraintes, … enfin un (…)

Forum Programmation.c Volatile, struct et interruptions.

Posté par  . Licence CC By‑SA.
Étiquettes : aucune
2
13
jan.
2016

Bonsoir à tous.

Je suis en train de me poser plusieurs questions à propos de la façon de déclarer des variables devant être modifiées par une interruption.

Je dispose d'une structure de ce type :

struct buffer_t {
byte *buff;
int size;
int head=0;
int tail=0;
byte status=BUFF_EMPTY;
};

Cette structure représente un buffer circulaire rempli par une routine d'interruption, et (probablement) vidé par une autre routine d'interruption (pour l'instant je considère que ce n'est pas le cas).

Je sais (…)

Forum Programmation.c libaescprintf (ANSI Escape Sequences Color Print Format).

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes : aucune
2
15
sept.
2017

Bonjours les C, C++,

Il y eu relativement longtemps,

alors que je j'essayais de construire une bibliothèque permettant de colorier et de styler

la sortie sur le terminal, juste pour s'amuser

je suis tombé sur un os…

Un bug insolvable de part sa nature:

quand on colorie le background du terminal et

que l'on ajoute un linefeed (retour a la ligne)

et bien toute la ligne prenait la couleur précédemment définis, malgré le linefeed !

:note: En faisant des recherche (…)

Forum Programmation.c Linux ncurses emoticones

Posté par  . Licence CC By‑SA.
Étiquettes : aucune
2
28
oct.
2017

Bonjour,

Je suis entrain de developper un programme sous ncurses,
et dans mon programme, j'aimerais afficher des emoticones, plus particulièrement celui , alors les emoticones s'affiche sous rxvt-unicode en fesant un copier/coller, mais en C99, il ne s'affiche pas.

$LANG = en_US.UTF-8
$TERM = rxvt-unicode

Par hasard, Vous aurez des pistes ?

Merci d'avance.

Forum Programmation.c Y'a il une grande différence entre coder jeu 2D et jeu 3D

Posté par  . Licence CC By‑SA.
Étiquettes : aucune
2
3
sept.
2018

Salut,

je veux commencer à apprendre la programmation d'un petit jeu en 3D en langage C mais j'ai peur de ne pas réussir et j'aimerai savoir si c'est la même chose que de coder un jeu 2D sauf quand 3D en traite les variable x,y,z et en utilise les matrice que je ne connais pas encore.

je veux juste savoir si la programmtion du jeu 3D n'a rien à voir avec la 2D et il faut tout oublier et commencer (…)

Forum Programmation.c Longueur d'une chaine de caractères en itf8

Posté par  . Licence CC By‑SA.
Étiquettes : aucune
2
12
mar.
2019

Bonjour,

Ami expert qui code en C aussi rapidement qu'un boucher découpe une carcasse ou qu'un cuisinier prépare des carottes, peux-tu me donner les includes à ajouter dans un source C et la fonction à utiliser pour obtenir le nombre de caractères d'une chaine codée en utf8 ?

En clair, je code en C en utf8 sous linux avec gcc comme compilateur. J'ai besoin que longueur("léa") me renvoie 3. strlen n'est pas adapté ici.

Soit tolérant : je suis un (…)

Forum Programmation.c GDB avec Emacs

Posté par  . Licence CC By‑SA.
Étiquettes : aucune
2
28
nov.
2021

Bonjour à tous !
J'essaye de me lancer dans le débogage de programme C en utilisant GDB avec Emacs. J'utilise pour ça gdb-many-windows qui permet d'avoir beaucoup d'informations utiles. Cependant, cette commende est censée afficher dans un des buffer le code source du programme en cours de débogage. J'ai l'option activé lorsque je tape M-x customize et j'ai de plus rajouté une ligne dans mon fichier .emacs. Cependant, gdb-many-windows n'affiche pas le source code mais un gestionnaire des buffers actuellement (…)

Forum Programmation.c Programmer un démineur en C

Posté par  .
Étiquettes : aucune
1
9
juin
2009
Je dois programmer un démineur en C sans bibliothèque graphique. Jusque là ça marche mais je bloque sur la fonction de dévoilement des cases vides. Lorsqu'on choisit une case, s'il y a des mines autour, le programme affiche le nombre de mines S'il y a une mines le programme affiche perdu Mais q'il n'y a ni mines ni mines autour, il affiche seulement "0". Ce qui ne fait pas avancer le jeu. Je voudrais que dans ce cas, le jeu (…)

Forum Programmation.c Une bibliothèque partagée (shared object, *.so) pour conversions et calculs mulitbases.

Posté par  (site web personnel) . Licence CC By‑SA.
1
21
déc.
2014

Salut les Linuxiens de tout bords,
je tiens a vous présenter ma première bibliothèque partagée, qui porte le nom de:
hobdcalc (Hexadecimal, Octal, Binary, Decimal Calculator).

Si vous vous demander ce qu'est concrètement une bibliothèque partagée: je vous explique.

Une bibliothèque partagée est un fichier compiler situer dans un dossier bien spécifique de votre arborescence qui contient des fonctions. La bibliothèque est charger en mémoire et chaque programme qui utilise une fonction de cette bibliothèque va chercher (…)

Forum Programmation.c Enregistrement d'un .wav

Posté par  . Licence CC By‑SA.
Étiquettes : aucune
1
28
mai
2015

Bonjour,

J'essaie d'enregistrer du son dans un format .wav, mais lorsque j'écoute le son, ce que j'ai enregistré est ralenti et plus grave, avez vous une idée de pourquoi ?
Déjà il faut savoir que je ne suis pas sure du "type" auquel doit correspondre le buffer lors de la récuperation audio "snd_pcm_readi(sound->capture_handle, buf, BUFFER_SIZE)" (pour l'instant mis de type int16_t puisque j'ai une carte sonore de type "SND_PCM_FORMAT_S16_LE"

Si vous ne voyez pas d'erreur je peux aussi donner les paramètres (…)

Forum Programmation.c Communication entre processus avec pipe() et dup2().

Posté par  . Licence CC By‑SA.
Étiquettes : aucune
1
28
fév.
2020

Bonjour,

Je souhaite écrire un programme en C, qui permet d'enregistrer toutes les entrées/sorties d'un bash.
Mon idée est de créer un nouveau processus "enfant" qui va lancé le bash.
Le processus "parent" va s'occuper d'enregistrer les entrées/sorties du processus "enfant".
Pour l'instant j'essaye seulement de connecter STDIN du père a STDIN du fils et STDOUT du fils a STDOUT du père.

#include <stdio.h>
#include <unistd.h>
#include <stdlib.h>

#define BUFF_SIZE 1024
#define NB_PIPE 2

int main(int argc,
(…)

Forum Programmation.c Code assembleur incorrect généré à partir du code C (ARM Cortex-m3) ?

Posté par  . Licence CC By‑SA.
Étiquettes :
1
2
déc.
2021

Hello,

J'ai un problème avec un code assembleur généré par GCC à partir d'un code C.

J'essaie d'écrire un firmware minimal pour un microcontrôleur, le LPC1769.
Il utilise le processeur ARM Cortex-M3. Mon firmware est simple :
* Exécute une fonction nommée "reset()" lors de la réinitialisation du processeur
* Dans cette fonction, je déclare 3 variables locales : 3 pointeurs vers 3
différents registres, initialisés avec leur adresse
* Ensuite, j'écris une valeur dans chaque registre

Le problème:

Le (…)

Forum Programmation.c l'assembleur sous C

Posté par  .
Étiquettes : aucune
1
31
mai
2005
bonsoir tout le monde
Je m'excuse d'avoir mal formulé mes questions,
J'ai essayé d'utiliser l'assembleur sous "C" mais le compilateur m'affiche _asm non déclarée, ce programme est le suivant:

#pragma inline
int main()
{
_asm
{

}
}

Forum Programmation.c Masquer pointeur souris

Posté par  .
Étiquettes :
1
6
nov.
2005
Bonjour

je cherche quelqu'un qui saurait comment masquer automatiquement le pointeur de la souris aprés un temps t ...

En fait, j'utilise Firefox sous une fedora core 4 pour diffuser un contenu sur un écran lors d'une présentation dans un magasin. J'aimerais donc que lorsque j'allume mon ordi et que firefox se lance, le pointeur se masque pour ne pas avoir besoin de déplacer la souris vers la droite. le problème est que je ne peux pas demander à mon (…)