Le pub des programmeurs
- 1 927 réponses
- 117 participants
- 131 697 vues
- 130 followers

Anonyme



Pov Gabou

Citation :
Sur PC, la qualité du timing MIDI "externe" (hors VST) a probablement toujours été le cadet de leurs problèmes. Ce qui ne veut pas dire que les pb n'existent pas, à force de rajouter des couches et des couches d'abstractions matérielles:
Oui, mais on rentre encore une fois dans les problemes de windows. Tous les autres OS dignes de ce nom ont nettement moins ce probleme, car ils ont des mechanismes de scheduling dignes de ce nom. C'est pas tant un probleme d'abstraction qu'un probleme de mauvais abstraction


cosmicsee

j'en ai fait un en javascript, mais il manque la commande de déroulage automqtique lorsqu'on passe la souris dessus.
Le mien ne se déroule pas si je ne lique pas sur la flèche à droite...
je sais qu'il faut mettre un truc du genre <mouseoveron="showmenu" mouseoverout="hide Delay"> comme c'est écrit dans la source de cette page.
au passage, si vous avez des adresses de sites proposant des listes de codes pour apprendre, je veux bien, parce que jusqu'à maintenant je n'ai pas trouvé comme pour le html...


alexonif2


J'aurais du préciser quand même ces quelques points :

ce n'est pas vraiment une appli que je souhaite réaliser mais davantage des "manipulations" algorithmiques du son et de la musique.
Quelques exemples :
1. A partir d'un son de piano vst, jouer une partition crée au moyen d'un algorithme (comme à partir d'une matrice de markov par exemple)
2. me fabriquer un "piano préparé" à partir de plusieurs banques de samples
3. fabriquer des "objets-sonores" dans un environnement 3D (ex : un cylindre qui emmet un son de + en + fort en intensité au fur et à mesure qu'on s'en approche)
4. partir du spectre d'un son donné et lui faire subir un algorithme qui le modifie en temps réel...
Bref : "programmer de la musique et du son"
...
En réalité, les idées ne me manquent pas; mais de les organiser dans une logique de programmation me manque cruellement :
certains m'ont parlé de Csound, d'autres de Puredata, d'autres encore d'OpenGL ...J'avoue être un peu perdu dans tout ça...
Il me paraissait logique dans un premier temps de dominer l'aspect midi et C++ ...
A présent vous savez tout!
Autre élément qui peut être décisif dans mon choix :
je me débrouille en C++ ...
Mais bon

_john.


Avant de tout coder de zéro, tu as essayé des synthé modulaires ?
Personellement, j'utilise Plogue Bidule et j'en suis super content. C'est un gain de temps énorme par rapport à se palucher un VST qui ferait la même chose. Et si vraiment pour des questions de perf ou pour intégrer une bibliothèque extérieur je suis obligé de coder un plugin, il fait rarement plus de 500 lignes. (Je me suis aussi fait un plugin pour Bidule qui lit du Python, histoire de coder encore moins)
Typiquement, pour les points 1, 2, et 4, ca doit pouvoir se faire dans n'importe quel système modulaire.
Pour le 3, ça se corse. C'est clair qu'il faut mettre les mains dans le cambouis. Mais je pense que tu peux t'en tirer en faisant "simplement" un VST qui sort du MIDI pour les paramètres des tes "objets sonores" et laisser ton séquenceur se charger de tous les problèmes plus "bas niveau".

.: Odon Quelconque :.


« What is full of redundancy or formula is predictably boring. What is free of all structure or discipline is randomly boring. In between lies art. » (Wendy Carlos)

Pov Gabou

Citation :
Il me paraissait logique dans un premier temps de dominer l'aspect midi et C++ ...
Franchement, apres tes precisions, je dirais encore plus qu'avant que le C++ est vraiment pas le bon outil, c'est peut etre meme le pire. Le C++ reste un langage tres peu expressif, c'est du bas niveau.
Pour l'aspect composition, il y a pas mal d'environnements qui devraient te satisfaire: Csound, Pure Data, Max/Msp, reaktor, supercollider, chuck. Chacun avec ses forces et faiblesses.
supercollider et chuck sont des langages temps reels pour la composition et la synthese. Je les connais pas vraiment, mais j'ai vu des trucs interessants faits avec Chuck, par exemple.

jujupauty

Dans pure date il y a un module open GL, qui permet de mixer visualisation et musique...
Regarde du cote de ces outils, ce sera bien plus gratifiant du point de vue créatif.
Jul

alexonif2

Laissons tomber C++ et ses copains
Allons voir plutôt du côté de PureData.
Quelquechose m'échappe :
Citation : Dans pure date il y a un module open GL, qui permet de mixer visualisation et musique...
Qu'entend tu par module ? Je voyais justement OpenGl comme une librairie exploitable surtout en C++...

miles1981

Audio Toolkit: http://www.audio-tk.com/

Pov Gabou

http://audicle.cs.princeton.edu/
Citation :
what is the Audicle? : Many software environments have been developed for computer music. Programming environments typically provide constructs to implement synthesis or musical algorithms, whereas runtime environments allow performers to exert parametric control over their programs onstage, in real-time. We present a potentially new type of audio programming environment that integrates the programmability of the development environment with elements of the runtime environment. The result, called the Audicle, is a duct-taped intersection of a concurrent smart editor, compiler, virtual machine, and debugger, all running in the same address space, sharing data, and working together at runtime. We sometimes believe this augmentation has the potential to fundamentally enhance the way we write and visualize audio programs both offline and on-the-fly.

Dr Pouet

( résumé - thread entier )
Il y a eu une sorte de reprise du débat (15 ans après...

article de Tanenbaum
réaction de Torvalds (long)
point de vue d'un tiers réputé

Pov Gabou

Ensuite, l'argument de coherence est un peu bidon je trouve (d'ailleurs, comme par hasard, la partie ou Linux explique cette partie n'est pas citee :
Citation :
Seperating some things is a wonderful thing, and not ten
years behind. Almost all lockless algorithms depend on
per-cpu data structures, and that's fine.
The problem is doing it for "everything". It doesn't work.
Doing it for the filesystem caches, for example, is a total
disaster. It increases memory pressure by huge amounts, and
makes synchronization much harder.
(snip)
So replication simply isn't a generally acceptable model.
It works fine sometimes, and when it works, it's
wonderful, and monolithic kernels will certainly do it too.
It's just not a "generic" solution.
Ce qui repond plutot bien au "The last sentence is obviously wrong: when you do not share data structures, there is no coherency problem by definition. Technically, it is possible to share memory in microkernel-based applications, but the statement is true in the sense that this practice is philosophically discouraged."
Ce que je trouve assez revalateur, c'est de voir toutes les previsions de Tannenbaum en 92, et de voir le monde d'aujourd'hui. Il a eu tord sur a peu pres toute la ligne (RISC, micro kernel partout, etc...).

Pov Gabou

Rien que ca, ca contredit completement l'argumentaire de la plupart des contradicteurs a mes yeux: si le code de Linux, son organisation etait si mauvais, comment se fait-il qu'il ait put aller aussi loin ?
Ensuite, sur le probleme des drivers: Linux permet a de plus en plus de drivers d'etre en dehors de l'espace noyau (USB, filesystem avec FUSE, et une autre infrastructure dont le nom m'echappe qui est en train de se mettre en place).
Enfin, tout le truc sur l'OO, franchement, je trouve que c'est bidon. Deja, presenter l'OO comme super truc des 20 dernieres annees, c'est loin d'etre evident. Puis quand tu vois la liste que donne A.T http://www.cs.vu.nl/~ast/reliable-os/
* QNX
* Integrity
* PikeOS
* Symbian
* L4Linux
* Singularity
* K42
* Mac OS X
* HURD
* Coyotos
Franchement... Deja, j'ai jamais vu quelqu'un en dehors d'apple pretendre que mac os X a un meilleur noyau que Linux, plutot le contraire (d'ailleurs, personne n'a jamais utilise le noyau de Mac OS X, alors qu'il est open source); quand tu regardes un peu les sources, c'est plutot darwin en est la ou etait linux il y a 10 ans; en plus, c'est pas du tout micro kernel, vu que tous les drivers sont dans le meme espace d'adressage. L4Linux n'a jamais vraiment servi a rien, HURD n'est toujours pas utilisable (et en plus, pour la version base sur MACH, tous les drivers sont aussi dans l'espace d'adressage du noyau).
Quand Tannenbaum dit que Torvald n'est pas interesse par l'embarque, c'est aussi de mauvaise foi. Surtout que Linux est vachement utilise en embarque.

nonconforme

Un de mes stagiaires me fait la leçon la -dessus, j'aurai ma revanche quand il devra prononcer "mebibit" en soutenance ou c'est vraiment utilisé maintenant ?
Affiliation : Dirigeant Fondateur d'Orosys - Two notes Audio Engineering

miles1981

En embraque, on a Linux, oui, mais lorsqu'il s'agit de systèmes temps réel, on se rabat sur les noyaux qu'il a cité.
Je pense aussi comme lui, chacun poursuit son idée, et que le meilleur gagne en toute sportivité, il y a des avantages et des inconvénients aux deux approches.
PS : Il faut tout de même penser non-structuré comme non-structuré de l'extérieur, je pense, car Linux est structuré. D'ailleurs, les modifications actuelles (sortir les drivers du noyaux) sont en train d'être faites par tous les suystèmes qui ne le faisaient pas et Microsoft tente de modulariser son OS de la même manière. D'ailleurs, si on réfléchit bien, modulariser, c'est créer des composants qui s'assembleront, donc un micro-kernel à terme. C'est tout de même plus simple à maintenir.
Audio Toolkit: http://www.audio-tk.com/

ClockworkOi!

Citation : J'ai une question un peu HS : est-ce que vous utilisez les unités mebibit, mebioctet etc...
Un de mes stagiaires me fait la leçon la -dessus, j'aurai ma revanche quand il devra prononcer "mebibit" en soutenance ou c'est vraiment utilisé maintenant ?
Pour ce que j'en ais vu il semblerais que c'est "la norme" etc comme cédérom...

Pov Gabou

Citation :
En embraque, on a Linux, oui, mais lorsqu'il s'agit de systèmes temps réel, on se rabat sur les noyaux qu'il a cité.
Il y a aussi des noyaux non micro en embarque. En fait, il ne demontre en rien que le design micro kernel est ce qui fait la puissance de ces OS la; et encore une fois, il s'agit la de systemes ultra specialises, qui ont un domaine ultra limite par rapport a linux. Faire un OS temps reel quand tu ne fais que de l'embarque, c'est beaucoup plus simple.
Ce que je n'aime pas dans son argument, c'est de dire que les micro noyaux, c'est plus adapte que d'autres design; la preuve, voila des OS micro noyaux en embarque. Mais le lien de causalite micro noyau => meilleur OS, il est pas du tout evident !
Linux est aussi utilise pour du temps reel (Montavista, par exemple: c'est en train de devenir une plateforme de choix pour les smart phones).
Citation :
D'ailleurs, si on réfléchit bien, modulariser, c'est créer des composants qui s'assembleront, donc un micro-kernel à terme.
Justement, c'est la le point d'achoppement: pour Torvald, tu peux creer des composants sans faire de micro kernel (qui impose un espace d'adressage different pour chaque composant). En fait, la ou A. T dit que le micro noyau est question de design, Torvald repond que c'est un un probleme d'implementation (qui a un impact fort sur les performances).
La aussi, je pense que le resultat parle de lui meme: Linux est modulaire, car a partir du meme source tree, tu peux faire des noyaux qui tiennent sur quelques Mo de ram, et des noyaux pour du HPC. A.T dit que le seul moyen de faire un truc modulaire, c'est le micro noyau, et Linus dit que non.
Un autre site sur le debat:
http://tunes.org/wiki/microkernel.html
Citation :
PS : Il faut tout de même penser non-structuré comme non-structuré de l'extérieur, je pense, car Linux est structuré.
Qu'est ce que tu entends par la ?

Pov Gabou

http://www.realworldtech.com/forums/index.cfm?action=detail&id=67263&threadid=66595&roomid=2

Dr Pouet

Citation : Rien que ca, ca contredit completement l'argumentaire de la plupart des contradicteurs a mes yeux: si le code de Linux, son organisation etait si mauvais, comment se fait-il qu'il ait put aller aussi loin ?
Ta passion t'enflamme jeune padawan !

Pour ce genre de débat il y a truc vicié dès l'origine : croire ou prétendre que un truc est mieux que l'autre. Les deux solutions (et comme le disent certains, il y en a beaucoup plus que 2) ont de nombreuses caractéristiques différentes. En fonction des usages étudiés, ces caractéristiques peuvent être importantes ou non, avantageuses ou pas.
Croire que "one size fits all" est une erreur évidente, que tous les deux commettent un peu. Il y a deux trucs que j'ai relevés, qui m'ont fait marrer (et que je considère comme grossièrement faux) :
Citation : I know that computer software is different from car software, but users just want them both to work and don't want lectures why they should expect cars to work and computers not to work. I want to build an operating system whose mean time to failure is much longer than the lifetime of the computer so the average user never experiences a crash.
A coût constant, évidemment que l'on préfère un truc fiable que buggé. Mais si les évolutions doivent être 3 fois moins rapides, si le logiciel doit coûter 2 ou 5 fois plus, pas sûr que l'utilisateur soit intéressé. C'est même sûr que non. Rarement l'histoire a privilégié la meilleure techno. Digital Unix (=Tru64) était proche d'un micro-noyau si je ne m'abuse? Ils avaient aussi le meilleur hardware, le meilleur Unix, et le meilleur compilo C++ ; donc tout faux par rapport à M$.

Citation : Anybody who has ever done distributed programming should know by now that when one node goes down, often the rest comes down too.
Heureusement que non ! Systèmes bancaires, salles de marchés, salles de contrôle satellite/fusées, centrales nucléaires, trucs militaires, réservations avion ou train... ;)
En deux mots, je pense que le gain de fiabilité dont parle Tanenbaum existe (et donc qu'il a raison sur ce point), mais qu'en fait le marché associé est ridiculement petit. 90% se contentent de Windows, pour 9% Linux est hautement satisfaisant et peut-être qu'une partie du pourcent restant pourrait être intéressé.
Cela dit, soit ce sont des systèmes avec des contraintes physiques ou prix (téléphone portable, jouet, UA1D

Du coup je vois peu de cas d'applications. Menfin je prétends pas tout connaître !
Par contre, ce qui m'a surpris, amusé et intéressé, c'est de voir que l'on retrouve au niveau application, voire appli distribuée cette opposition "partage de données" (noyau monolithique) / "recopie de données" (micro-noyau).
Et là, le choix de la recopie est très sain, et très viable. C'est assez courant ; et quand on ne le fait pas, c'est souvent des problèmes insolubles ensuite. Dans ce contexte, même si l'inconvénient soulevé par Torvalds est parfaitement vrai, ce choix est généralement meilleur :
Citation : The fundamental result of access space separation is that you can't share data structures. That means that you can't share locking, it means that you must copy any shared data, and that in turn means that you have a much harder time handling coherency. All your algorithms basically end up being distributed algorithms.

Pov Gabou

Citation :
Ta passion t'enflamme jeune padawan !
Bof, je crois pas etre si passione que ca, et Torvald sort souvent des anneries aussi, je cherche pas a le defendre a tout prix.
Citation :
Croire que "one size fits all" est une erreur évidente,
Peut etre, mais "Linux fits many more sizes than any other OS ever has before" (c'est la loi de Gabou).
Plus serieusement, Linux tourne sur enormement de plateformes differentes, avec des contraintes tres differentes aussi. Est ce que tu connais un autre OS qui est utilise aussi bien sur des computing farms, des supercomputers, des telephones portables (motorola par exemple investit pas mal dans linux maintenant) a partir du meme code ? Moi non. Ca n'a jamais ete fait avant. Ca montre bien qu'il y a quelque chose qu'il y a quelque chose qui fait que le design et plus globalement tout le process autour de linux marche extremement bien.
Citation :
Heureusement que non ! Systèmes bancaires, salles de marchés, salles de contrôle satellite/fusées, centrales nucléaires, trucs militaires, réservations avion ou train...
Mais tout ca, ce ne sont pas des systemes distribues au sens ou Torvald l'entend.
[edit] D'ailleurs, dans quasiment tous ces domaines, Linux est de plus en plus utilise. Salle de marche ? Wall Street est de plus en plus interesse par Linux (j'ai pas trop suivi non plus); controle de fusee/satellites, la, je sais pas trop, c'est pas un domaine que je suis non plus.
Citation :
Et là, le choix de la recopie est très sain, et très viable. C'est assez courant ; et quand on ne le fait pas, c'est souvent des problèmes insolubles ensuite. Dans ce contexte, même si l'inconvénient soulevé par Torvalds est parfaitement vrai, ce choix est généralement meilleur :
Oui mais Torvald n'a toujours parle que de son domaine, la ou les performances comptent enormement.

Dr Pouet

Citation : Bof, je crois pas etre si passione que ca, et Torvald sort souvent des anneries aussi, je cherche pas a le defendre a tout prix.
Tu es parti au quart de tour quand même !

Ca donne l'occasion de te taquiner, mais note bien que je n'ai pas écrit "ta passion t'aveugle", d'autant qu'on est quasiment d'accord sur tout.
Citation : Peut etre, mais "Linux fits many more sizes than any other OS ever has before" (c'est la loi de Gabou).
Pour l'instant Windows fits much more ! Mais c'est vrai que côté serveurs et autre informatique professionnelle, Linux a balayé les UNIX et d'autres produits à une vitesse incroyable. On est d'accord que jamais QNX et son micro-noyau ne vont remplacer Linux sur la moitié de machines où Linux est aujourd'hui, c'est une évidence.
Citation : Ca n'a jamais ete fait avant. Ca montre bien qu'il y a quelque chose qu'il y a quelque chose qui fait que le design et plus globalement tout le process autour de linux marche extremement bien.
Certes. Ca ne veut pas dire que Linux était toujours meilleur que ce qu'il a remplacé ; des fois il était simplement beaucoup moins cher, et au global ça suffisait pour l'emporter. Par exemple le multithreading était bien pourri avant le noyau 2.6 (et les NPTL) alors qu'il était ok depuis longtemps chez les autres Unix. On en revient au même point : contrairement à ce que dit Tanenbaum, les endroits où on a vivement besoin d'un noyau beaucoup plus fiable que celui de Linux sont certainement extrêmement rares.
En plus ya moyen de gagner beaucoup en fiabilité sans passer au micro noyau : en figeant des drivers (UAA de Vista ...) ou en les mettant en user space... et plein d'autres trucs.
Citation : Mais tout ca, ce ne sont pas des systemes distribues au sens ou Torvald l'entend.
[edit] D'ailleurs, dans quasiment tous ces domaines, Linux est de plus en plus utilise. Salle de marche ? Wall Street est de plus en plus interesse par Linux (j'ai pas trop suivi non plus); controle de fusee/satellites, la, je sais pas trop, c'est pas un domaine que je suis non plus.
Mmmh, si, je pense que Torvalds parlait des "applications distribuées" (et non d'un OS distribué), car derrière il ajoute :
Citation : In contrast, if you do distributed physics calculations, and one node goes down, you can usually just re-assign another node to do the same calculation over again from the beginning. That is not true if you have a really distributed system and you didn't even know where the data was coming from or where it was going
Je pense que ce sont des utilisations dont il n'est pas familier, c'est tout.
Et oui dans ces systèmes c'était très généralement des Unix commerciaux qui étaient utilisés, et donc désormais Linux pratiquement partout. Les défauts des threads et du support du C++ étaient encore gênant il y a quelques années, mais maintenant c'est fini. D'ailleurs l'implication d'IBM et autres intel (au niveau de son compilateur) montre bien que la direction actuelle est complètement Linux (pour ce genre de systèmes).
Citation : Oui mais Torvald n'a toujours parle que de son domaine, la ou les performances comptent enormement.
On est d'accord. Pour certaines applications (et non OS), courantes dans l'industrie (mais pas côté grand public), ces concepts sont intéressants. Pour le système d'exploitation, possible que ça ait un intérêt, mais certainement très confidentiel.
SAP tourne sur Windows NT, doit tourner sur Linux, et ne doit rien avoir à foutre d'un micro-noyau. Tibco, Oracle, Weblogic et MQ-Series non plus !

Dr Pouet

Citation : D'ailleurs, dans quasiment tous ces domaines, Linux est de plus en plus utilise.
En gros, à partir de B, jusqu'à E on trouve du linux.
Pour du A je pense que ce n'est jamais le cas, et que ce n'est pas près de l'être : Linux compte trop de lignes pour être certifiable. Mais c'est un marché ultra-spécifique (notamment au niveau hardware). Donc ça n'apporte rien par rapport au débat Tanenbaum / Torvalds.

Pov Gabou

Citation :
Pour l'instant Windows fits much more !
Franchement, je vois pas pourquoi tu dis ca ? Deja, windows tourne pas sur tant d'architectures que ca (x86 pour les windows classiques, ppc pour la xbox 360, et arm pour windows CE ?). Ensuite, meme si c'est souvent anectodique, chaque fois qu'un nouveau truc sort en hardware, linux tourne dessus peu de temps apres: ca va des consoles de jeu a toute sorte de NAS et cie.
Linux tourne quand meme sur pres de 50 architectures differentes. Il y a enormement de FS qui tournent sous linux (la aussi, pionnier a ce niveau la: rien de revolutionnaire, mais le vfs de linux est en avance sur tous les autres UNIX depuis longtemps autant que je sache)
Apres, la ou je te suis completement, c'est que linux marche pour les memes raisons que windows, quelque part: tu peux avoir le meme systeme au boulot et a la maison, et ca, pour le developpement, c'est important. Ballmer gueulait developers, developers, et le mouvement open source en general fournit ca a des niveaux dont meme MS ne peut pas rever.
Citation :
Par exemple le multithreading était bien pourri avant le noyau 2.6 alors qu'il était ok depuis longtemps chez les autres Unix
C'est discutable, ca. Il y a quand meme un point important a ce niveau la: linux a ete le seul OS generaliste (a ma connaissance) qui au court du temps, a vu ses performances de creation / context de process augmenter et non diminuer. Ensuite, le multi threading, c'est pas dans la philosophie Unix. Enfin, c'est une des innovations et differences importantes de linux par rapport aux autres Unix, il y a le system call clone, qui rentre en jeu la dedans, qui permet de creer des processus/threads tres rapidement (man clone Unlike fork(2), these calls allow the child process to share parts of its execution context with the calling process, such as the memory space, the table of file descriptors, and the table of signal handlers. (Note that on this manual page, "calling process" normally corresponds to "parent process". But see the description of CLONE_PARENT below.)
Il y a quelques annees, j'avais cette idee que les Unix proprietaires etaient "vachement plus mieux" que linux niveau performances, et la, avec opensolaris, qui est quand meme repute (c'est le meme code que solaris), tu vois qu'en fait, les performances sont bien moindres que linux dans pas mal de cas.
Citation :
Pour du A je pense que ce n'est jamais le cas, et que ce n'est pas près de l'être : Linux compte trop de lignes pour être certifiabl
A ce niveau la, tu peux pas utiliser le C, de toute facon, non ? C'est typiquement le sujet sur lequel je connais rien. T'as des projets comme ASTREE: ); return false;" rel="nofollow" target="_blank">http://www.astree.ens.fr/, qui font la verification du C, mais je me souvient m'etre fait explique par des gens beaucoup plus intelligents que moi que le C est une horreur quan d tu veux faire des preuves formelles, car le langage a enormement de situations non specifiees (pour ASTREE, ils precisent que tu ne peux pas utiliser d'allocation dynamique, par exemple).

Dr Pouet

Citation : Franchement, je vois pas pourquoi tu dis ca ? Deja, windows tourne pas sur tant d'architectures que ca (x86 pour les windows classiques, ppc pour la xbox 360, et arm pour windows CE ?)
Je parlais en nombre d'utilisateurs (donc nombre de PCs équipés avec Linux ou Windows). Je reconnais que dès que l'on va parler de "nombre de types d'utilisateurs différents", Linux l'emporte probablement déjà. Toi tu parles du hardware, et là aussi Linux supporte beaucoup plus de plateformes.
Citation : C'est discutable, ca. Il y a quand meme un point important a ce niveau la: linux a ete le seul OS generaliste (a ma connaissance) qui au court du temps, a vu ses performances de creation / context de process augmenter et non diminuer. Ensuite, le multi threading, c'est pas dans la philosophie Unix.
Un problème typique et très gênant : tu fais la maintenance d'un logiciel sur 10 ou 20 ans, au début il est sur un Unix commercial, et il est multithread. Tant que dans Linux les threads systèmes étaient plaqués sur des processus, les signaux (SIGPIPE...) atterrissaient forcément dans le thread responsable de l'action. Or avec POSIX il n'était pas censé avoir cette limitation, le signal est de niveau processus et non thread. D'où gros problème. Maintenant qu'il y a la Native Posix Thread Library, c'est ok.
Citation : A ce niveau la, tu peux pas utiliser le C, de toute facon, non ?
Si, ça peut. Par contre faut que le compilateur soit certifié également, ce qui élimine aussi gcc. Ca se complique.

Les méthodes formelles ne sont pas systématiquement utilisées dans ces contextes. Il peut y avoir un mélange aussi : méthode formelle (SDL) pour le découpage en tâches (processus ou threads, mono ou multi machines) et inter-communications, puis codage avec tests unitaires de bouts de code purement fonctionnels.

Pov Gabou

Citation :
Je parlais en nombre d'utilisateurs (donc nombre de PCs équipés avec Linux ou Windows).
Ah, ok. Mais a ce niveau la, ca veut plus dire grand chose techniquement. Linux qui tourne sur 50 arch differentes, ca veut dire quelque chose techniquement. Windows qui fournit 95 % des machines desktop, ca veut aussi dire quelque chose, mais c'est plus forcement technique

Citation :
Or avec POSIX il n'était pas censé avoir cette limitation, le signal est de niveau processus et non thread.
Surtout, pthread est ultra sous specifie vis a vis des signaux. Je crois pas que ce probleme soit specifique a Linux ? Comme le dit Brian Sullivan (a priori pas un demi mauvais a ce sujet):
Citation :
On Unix systems, using threads and signals together is a nightmare.
D'ailleurs, je suis en train de me dire, un peu de mauvaise foi: la notion de thread, c'est finalement tout ce que Tannenbaum reproche a linux: tu partages ton espace d'adressage pour gagner en performances, mais ca devient beaucoup moins fiable

- < Liste des sujets
- Charte