Se connecter
Se connecter

ou
Créer un compte

ou
FR
EN

Le pub des programmeurs

  • 1 927 réponses
  • 117 participants
  • 131 713 vues
  • 130 followers
Sujet de la discussion Le pub des programmeurs
Salut :coucou: y a des programeurs sur AF si oui vous bossez sous quoi ?
Afficher le sujet de la discussion
1601
Ha oui je me disait aussi :bravo:
1602
Citation de Jimbass :
On peut revenir aux sources ;)
https://fr.wiktionary.org/wiki/s%C3%BBret%C3%A9
https://fr.wiktionary.org/wiki/s%C3%A9curit%C3%A9
« Sécurité et sûreté ne sont pas la même chose ; le premier exprime un sentiment et l'autre un état d'assurance ; on a souvent de la sécurité sans être en sûreté ».

Je sais, mais non je maintiens.

Au taf il y a d'ailleurs des gens assez vieux pour avoir vécu les trois étapes : d'abord français, puis franglais, et depuis peu retour au françois old-school. Avec en plus la difficulté qu'on a qu'un seul adjectif pour les deux concepts : sûr.
1603
Pour avoir été un acteur des normes aero dans une vie antérieure, on parle bien de sécurité des vols (assurée, entre autre, par la sûreté de fonctionnement).

La réalité c'est que le choix lexical est surtout guidé par l'actualité médiatique et qu'un mot qui devient alarmant est remplacé par un autre au fil du temps (et parfois ça cycle).

Et si les anglicismes vous défrise, évitez soigneusement le monde de l'aéronautique sauce airbus :p


On peut choisir autre chose que le C et ADA ; il existe même des langages graphiques (en clair, on représente les portes logiques style câblé discret).


Une alternative aux tests DO c'est un solution proposée notamment par Mathworks pour leur générateur de code : Certifier un outil de test automatique qui garanti un couverture complète.

[ Dernière édition du message le 10/02/2017 à 12:47:35 ]

1604
Je travaille pour les systèmes du contrôle aérien, donc on manipule régulièrement cette terminologie. A priori celle que j'ai donnée est la traduction française officielle des règlements européens (évidemment inspirés et liés à la DO178B).

Des fois pour éviter la confusion on dit safety pour l'anti-panne. :-D

Pour l'anti-intrusion, c'est plus récent que l'on s'en préoccupe ; longtemps nos systèmes étaient tout simplement physiquement isolés du reste du monde !
1605
Citation de Dr :
Citation de Jimbass :
« Sécurité et sûreté ne sont pas la même chose ; le premier exprime un sentiment et l'autre un état d'assurance ; on a souvent de la sécurité sans être en sûreté ».

Je sais, mais non je maintiens.

Au taf il y a d'ailleurs des gens assez vieux pour avoir vécu les trois étapes


Ce n'est pas pour te contredire, mais la citation date d'avant 1807 ... et la définition du Wiktionnaire est basée sur le Dictionnaire de l’Académie française, huitième édition, 1932-1935. Tes collègues ont aussi connu le Révérend jeune ? :langue:

Je suis donc d'accord qu'il est indispensable de préciser de quoi on parle quand on utilise les mots sûreté et sécurité, tant ils sont utilisés à tort et à travers (au point qu'on n'arrive plus à savoir quel sens est le bon).

Citation de EraTom :
il existe même des langages graphiques (en clair, on représente les portes logiques style câblé discret).

Oui, j'avais suivi un tuto sur Scade, son langage synchrone graphique et son générateur de code certifié. Au final j'avais trouvé ca très proche (et moins pratique que) de coder en VHDL.
1606
Citation :
Ce n'est pas pour te contredire, mais la citation date d'avant 1807 ... et la définition du Wiktionnaire est basée sur le Dictionnaire de l’Académie française, huitième édition, 1932-1935. Tes collègues ont aussi connu le Révérend jeune ? :langue:

:-D Non mais c'est plutôt une question d'utilisation technique ou administrative de ces mots, que littéraire. Je me souviens bien, avant 2000, de collègues qui disaient qu'en informatique par rapport au reste de l'industrie, et à l'époque, on inverse les termes (= sûreté de fonctionnement, pour anti-panne).

Mais aujourd'hui on nous a imposé tout un vocabulaire bien précis. Certes je n'ai pas participé à la traduction ni aux lectures des documents les plus proches des sources, mais il semble clair que désormais la traduction française des règlements européens est :

safety -> sécurité
security -> sûreté.


Sinon le SDL est graphique lui aussi :

tout à droite c'est le dessin d'un changement d'état (= une branche d'un graphe d'état = statechart, proche des réseaux de Pétri) :
SdlArchitecture.JPG

Description des échanges de messages entre blocs (enre threads, entre 2 machines...) :
SdlChannels.png

Un graphe d'états plus détaillé :
SdlStateMachine.png

[ Dernière édition du message le 10/02/2017 à 18:06:40 ]

1607
Le truc c'est que les tests DO ne permettent pas seuls d'assurer la sécurité des vols : si la spécification dit qu'un avion doit éteindre ses moteurs quand on allume la lumière des toilettes elle permettra seulement de s'assurer qu'il n'y a pas de bug qui empêchera de le faire...

C'est pour cela qu'il y a tout un process de spécification, de validation et de vérification comme l'ARP qui vient "alourdir" la conception.
Les méthodes qui accompagnent le prototypage rapide sont attrayantes mais génèrent aussi quelques inquiétudes assez légitimes ; ce n'est pas de la simple résistance au changement.
1608
Hello :)

J'ai réussi à faire marcher ecasound ce w-e
C'est juste génial !!!!

Le seul truc qui manque du coup c'est un vu-mètre pour pas risquer de saturer mais bon
Finalement la ligne de commande c'est top, ça permet de sauvegarder facilement la config :)

Et j'arrive à avoir une meilleure latence que dans carla (normal, pas d'interface qui bouffe de la ressource)

Chris Kazvon

-------------------------------------------------

Introduction à Hornresp et Tutoriels  -  Tutoriels Vidéo pour Room EQ Wizard

[ Dernière édition du message le 20/02/2017 à 14:19:52 ]

1609
:8):bravo:
AL1
1610
J'ai une question, est-ce qu'il y en a un d'entre vous qui connaîtrait une lib en C pour faire de l'asynchrone?

Je suis pas très calé en C, j'sais pas si on peut mais je pose la question des fois que. :-D

[ Dernière édition du message le 05/03/2017 à 17:47:49 ]

1611
Citation de Truelle :
J'ai une question, est-ce qu'il y en a un d'entre vous qui connaîtrait une lib en C pour faire de l'asynchrone?

Je suis pas très calé en C, j'sais pas si on peut mais je pose la question des fois que. :-D

Au niveau de la boucle principale, pour gérer des actions, éventuellement du multitâche... ?

Il y a un gros truc en C++, qui a le merite d'être complet, éprouvé, très bien conçu, et bien documenté, avec carrément des livres chez Wiley & Sons. Par contre c'est gros.

C'est ACE :
https://www.dre.vanderbilt.edu/~schmidt/ACE.html

Livres : volumes 2 et 4 de la série Pattern Oriented Software Architecture
Le tome étant le livre incontournable très célèbre.
https://www.dre.vanderbilt.edu/~schmidt/POSA/

Sinon l'une des libraires de base sous-jacente à gtk permet de faire ça. En C. Et même dans plein d'autres langages.
Il semblerait que ce soit la GLib Core :
https://developer.gnome.org/glib/stable/glib-core.html

Pareil du côté de son rival Qt, mais en "C++ modifié", cette fois.

[ Dernière édition du message le 05/03/2017 à 18:12:27 ]

1612
J'vais essayer de regarder ça.
Sinon en vrai là c'est juste que j'ai l'impression que ça pourrait être bien plus sympa de faire de l'asynchrone pour ce qui est I/O sur arduino.

Après je sais pas si on peut vraiment intégrer ce genre de lib sur ces p'tites bêtes qui n'ont pas tant de ressources que ça en fait.

Sinon ça empêche pas que je puisse faire mumuse avec sur pc et raspberry. :-D

En tout cas merci d'avoir pris le temps de me répondre! :bravo:

[ Dernière édition du message le 05/03/2017 à 20:26:18 ]

1613
Il y a egalement libuv qui est au coeur de nodejs pour ceux qui connaissent.
https://github.com/libuv/libuv
1614
Et naturellement Boost.ASIO en C++ !
1615
Trumanche, il faut peut-être que tu précises ce que tu entends par "faire de l'asynchrone".
1616
Oui, parce que pour moi asynchrone ca peut vouloir dire, entre autres :
- un circuit numérique sans horloge
- une communication bufferisée (dont l'émetteur et le récepteur n'ont pas besoin d'être prêts en même temps)
- un événement extérieur (souvent une interruption)
- une liaison série sans transmission d'horloge (typiquement le A de UART)
- éventuellement, en tirant un peu les cheveux, un appel système non bloquant (armement d'une callback)

Ca ne serait pas plutôt du multithread et/ou multitâche que tu cherches à faire ?
1617
Les trucs que j'ai cités correspondent à :
Citation de Jimbass :
- une communication bufferisée (dont l'émetteur et le récepteur n'ont pas besoin d'être prêts en même temps)
- éventuellement, en tirant un peu les cheveux, un appel système non bloquant (armement d'une callback)
- multithread et/ou multitâche



Et si c'est pour de la musique : ASIO, Audio Unit, (jack ?)... :-D
1618
1619
Citation de Truelle :
faire de l'asynchrone pour ce qui est I/O

Citation de Jimbass :
éventuellement, en tirant un peu les cheveux, un appel système non bloquant (armement d'une callback)
C'est pourtant ça.
1620
Oui c'est ça en gros je voudrais que les boucles servant à écouter un signal en entrée ou envoyer un signal en sortie tournent en arrière plan et ne bloque pas le reste du code.

[ Dernière édition du message le 07/03/2017 à 07:53:42 ]

1621
TEUM > Si tu veux faire des communications asynchrones (type RS232, DMX ou MIDI par exemple) le microcontroleur de l'arduino a un périphérique dédié à ça : l'UART (il y en a même peut être deux ou trois) si c'est bien ca que tu veux faire, jette un oeil la dessus tu trouvera énormément d'info sur le web, les UART étant des fonctions de base de quasimment tous les systèmes à microprocesseur / microcontrôleur depuis les années 80.

[ Dernière édition du message le 07/03/2017 à 08:00:40 ]

1622
Citation de EraTom :
C'est pourtant ça.

Le truc, c'est qu'il faut être précis quand on utilise ces termes qui ont plein de sens différents selon de quoi on parle. Je côtoie plein de softeux/modéliseurs qui ne se rendent pas compte que leur jargon n'est pas universel. Moi je bosse sur l'architecture matérielle, des drivers et des RTOS, et j'ai pris l'habitude de toujours définir de quoi je parle avant de commencer.
x
Hors sujet :
Une fois, j'en ai même eu un qui voulait étendre le concept d'architecture logicielle à composants ... au hardware ! Je l'ai renvoyé vers les archives du JEDEC ...


Citation de Truelle :
Oui c'est ça en gros je voudrais que les boucles servant à écouter un signal en entrée ou envoyer un signal en sortie tournent en arrière plan et ne bloque pas le reste du code.

Il te faut donc un OS (ou assimilé) qui gère le multithread. Cf. mon post précédent.
1623
Pt: Ça à l'air super intéressant ce dont tu me parle (d'ailleurs je vais regarder ça ce soir ça a l'air cool :-D). Mais là ça à l'air de concerner plutôt les cas du type "Périphérique <=> Périphérique", genre [Arduino1/PC1/autre1] [Arduino2/PC2/autre2].

Là ce qui m'intéresse vraiment c'est que l'arduino écoute/envoi en boucle des signaux sur plusieurs de ses broches en arrière plan (ça peut-être des boutons, led, LCD, ou d'autre conneries).

Admettons que je veuille demander un truc à la con sur un afficheur LCD du type "dessine moi un hélicobite et fait moi bouger tout ça pour la gloire du lol", là ce qui m'intéresserait serait de ne pas attendre la fin de ce bloc pour continuer à exécuter le reste du code.

Après désolé si j'ai du mal à me faire comprendre. Je reste un gros newbie dans le domaine. Assimiler le jargon technique et bien l'utiliser c'est pas une monde affaire. :-D

J'ai pas encore lu tous les posts j'vais le faire promis. :-D

Edit: Merde crosspost.
Jimbass: Ok dac, donc faudra que je me contente d'écouter/envoyer avec l'arduino sans en faire plus et que je laisse mon pc ou un raspberry faire le reste si je veux pas que ça soit bloquant en gros?

[ Dernière édition du message le 07/03/2017 à 09:55:09 ]

1624
Teum > ha dans ce cas tu as besoin de code d'interruption. Comme leur nom l'indique ce sont des petites portions de codes qui se déclenches à la venue d'un événement (elles ne sont pas dans le programme principal et interrompent ce dernier à la venue de l'événement) je sais pas comment c'est géré en Arduino mais ça se fait sans aucun doute ;)

Édit : ça marche que pour l'écoute par contre. Pour l'envoie la il faudra soit passer par des périphériques (comme l'uart ou un timer) soit par un os temps réels (compliqué et je crois pas que ça existe pour Arduino)

[ Dernière édition du message le 07/03/2017 à 10:04:30 ]

1625
Microscopiquement, un cœur de processeur ne fait qu'une chose à la fois. On arrive quand même à donner l'impression qu'il se passe plusieurs choses en même temps, en passant suffisamment vite d'une tâche à une autre. C'est ce qu'on appelle le "temps partagé", et c'est la base de tous les systèmes d'exploitation modernes.
C'est l'ordonnanceur (scheduler) qui décide de passer d'une tâche à une autre au bout d'un certain temps (typiquement quelques ms) ou quand un événement se produit (interruption ou appel système). Une tâche peut décider de rendre la main quand elle attend une durée ou la disponibilité d'une ressource.
x
Hors sujet :
Après quand on a plusieurs cœurs, on peut faire du vrai parallélisme ... avec ses difficultés propres.


Une bonne introduction : http://www.freertos.org/implementation/a00004.html
(et en plus ca parle de FreeRTOS sur AVR)

Citation de Patrick :
tu as besoin de code d'interruption.


Ca permet de réagir à des événements matériels (appui sur un bouton, réception sur une UART, expiration d'un timer), et donc on peut construire pas mal de choses avec ca. Mais quand on commence à vraiment gérer des tâches ayant un état interne et des appels de sous-fonctions (donc une stack à gérer), on est déjà en train d'écrire un OS.

Citation de un :
un os temps réels (compliqué et je crois pas que ça existe pour Arduino)

:langue:

[ Dernière édition du message le 07/03/2017 à 10:22:44 ]