Entretien avec Linus Torvalds sur ZEIT ONLINE

Posté par (page perso) . Édité par Davy Defaud et Xavier Claude. Modéré par Florent Zara.
63
18
nov.
2011
Linux

Anika Kehrer a interrogé Linus Torvalds pour le compte du quotidien allemand Zeit et de sa plate‐forme ZEIT ONLINE. C’est avec leurs aimables autorisations que je vous propose une traduction de cet entretien.

Le texte original de cet entretien est paru sur ZEIT ONLINE.

Sommaire

Linux est devenu trop complexe

Linus Torvalds, le créateur du système d’exploitation libre (sic), craint qu’un jour plus aucun développeur ne comprenne le noyau. « Il doit devenir plus simple » déclare‐t‐il dans cet entretien.

ZEIT ONLINE : M. Torvalds, vous déclariez récemment lors d’un débat public que la complexité de Linux vous inquiétait. Pourriez‐vous nous en dire plus ?

Linus Torvalds : Il y a plusieurs parties du code source de Linux que seule une poignée de personnes connaissent vraiment bien. Trois personnes, spécialistes d’un certain sous‐système de Linux, discutaient la semaine dernière d’une erreur. Il nous a fallu plusieurs jours pour découvrir comment cette erreur pouvait survenir. Il est invraisemblable que cette erreur puisse causer des problèmes sérieux, car elle ne peut être déclenchée que par des actions plutôt exotiques. Et le plus amusant de l’histoire est que cette erreur est présente dans le code depuis 5 ans. Mais c’est un exemple de sous‐système qui ne touche qu’une poignée de spécialistes.

ZEIT ONLINE : Diriez‐vous qu’entre‐temps, Linux est devenu trop complexe ?

L. T. : Il n’est pas question d’« entre‐temps », la complexité m’a toujours préoccupé. La première version de Linux avait 10 000 lignes de code. Aujourd’hui, nous avons environ 15 millions de lignes de code, et depuis bien longtemps existent des sous‐systèmes qui sont devenus très complexes. Je redoute le jour où nous aurons une erreur que personne ne sera capable d’analyser.

ZEIT ONLINE : Est‐il problématique que tant de personnes développent Linux ?

L. T. : Linux est un projet open source plutôt atypique, dans la mesure où il n’y a pas de noyau dur assurant sa direction. Bien sûr, il y a moi, mais je ne suis pas trop du genre à surcontrôler les autres et, là, mes collaborateurs travaillent très indépendamment. Il n’y a pas de nécessité à la création d’une autorité centrale, chacun peut utiliser l’outil et collaborer, sans que cela soit régi par des règles inamovibles.
Ce n’est certainement pas un problème. En effet, je ne travaille pas avec des centaines de personnes, mais une quinzaine, dont quelques‐uns auxquels j’accorde une confiance totale. Ils ont à leur tour leurs propres collaborateurs, c’est ainsi que notre modèle est structuré. Cela s’est développé sans volonté directrice, mais je crois qu’il y a une bonne raison derrière ce résultat : les hommes s’organisent volontiers de cette façon, en un réseau de confiance.

ZEIT ONLINE : Quelle distribution utilisez‐vous ?

L. T. : Cela pourrait changer, mais en ce moment j’utilise Fedora 14. Fedora 15 est une telle catastrophe… Il se pourrait bien qu’openSUSE soit mon prochain choix. J’utilisais SuSE il y a dix ans et à un certain moment je suis passé à Fedora. Il se pourrait que je retourne aujourd’hui vers SUSE, bien que je puisse me diriger en fait vers Debian. Debian est la seule distribution que je n’ai jamais vraiment utilisée. On verra bien.

Il est difficile de percer sur le marché de la bureautique

ZEIT ONLINE : On a déjà plusieurs fois annoncé « cette année sera l’année du bureau Linux ! » Pourtant Linux reste peu répandu sur les ordinateurs de bureau et la plupart des acheteurs préfèrent d’autres systèmes. Linux est‐il trop difficile d’accès ?

L. T. : Il est très difficile d’entrer sur le marché de la bureautique. En premier lieu, parce qu’on doit, en tant que vendeur, prendre en charge les divers accessoires qui peuvent être connectés à un ordinateur. Ils doivent tous être gérés par le logiciel. Le cas des smartphones est bien différent, car le système n’a besoin de se débrouiller qu’avec l’appareil lui‐même. Mais s’il est question que l’utilisateur connecte une carte graphique ou une imprimante à son ordinateur, alors il faut prendre en charge chacun des périphériques qu’il pourrait acheter.
Il y a là plusieurs stratégies :

  • Le chemin choisi par Apple a été de ne gérer que son propre matériel ;
  • Le modèle choisi par Microsoft : les vendeurs de matériel savaient qu’ils avaient intérêt à collaborer avec Microsoft, dans l’intérêt de leurs ventes. L’entreprise avait une couverture de marché de l’ordre de 98 % : les vendeurs de matériel programmaient alors leurs pilotes eux‐mêmes, et les transmettaient à Microsoft. Il se pourrait que ce modèle vienne à cesser de fonctionner, mais pour l’instant il tient encore ;
  • Linux est le troisième et le plus difficile des chemins. Nous faisons tout presque seuls et disons : « Nous prenons tout en charge et écrivons les logiciels pour vous ! » Lorsque de surcroît les fabricants ne nous dévoilent aucune information, il nous faut tout d’abord découvrir comment une chose fonctionne, avant de pouvoir écrire un pilote correspondant. Et cela prend souvent toute une année.

Les gens ne s’intéressent pas pour les ordinateurs en tant que tels

Il y a cependant quelques domaines où la voie choisie par Linux donne de meilleurs résultats que celle de Microsoft. Il n’a pas fallu très longtemps à Linux pour adopter les nouveaux processeurs 64 bits. Comme nous avions déjà passé beaucoup de temps à écrire les pilotes de nombreux périphériques, nous avions leur code source, que nous avons pu recompiler. Lorsque les processeurs 64 bits sont apparus, Linux gérait tous les périphériques dès le premier jour. Ce serait évidemment fantastique que tous les vendeurs de matériel nous fournissent les pilotes, mais cela arrive tout de même parfois. La situation s’est franchement améliorée.
Mais il y a encore un autre problème. La plupart des gens considèrent leur ordinateur comme un appareil qui accomplit une tâche, mais n’ont pas d’intérêt pour l’ordinateur lui‐même. Pour moi, c’est un jouet que je veux bricoler. La plupart des gens ne souhaitent pas modifier leur ordinateur. Changer de système d’exploitation signifierait pour eux devoir apprendre quelque chose de complètement nouveau, bien que Linux ne coûte rien et qu’il dispose de beaucoup de gadgets très sympas.

ZEIT ONLINE : La raison de la faible diffusion de Linux réside‐t‐elle en cela, que les vendeurs d’ordinateurs ne pré‐installent pas Linux ?

L. T. : Dans une certaine proportion, c’est certain. Dans le fond, les vendeurs d’ordinateurs n’ont rien contre le fait d’installer Linux sur leurs machines, mais ils veulent en vendre. Et ils vendent en majorité aux gens qui ne sont pas attirés par la nouveauté.
La plupart des gens souhaitent un système tout prêt. Je crois que la situation pourrait changer avec l’évolution du mode d’utilisation, si par exemple Google Chromebook rencontrait le succès. Je ne sais pas si cela sera le cas, mais si les ordinateurs de bureau se transforment tout en étant acceptés, alors il sera plus facile aux fabricants de vendre d’autres modes d’utilisation. En attendant, les gens veulent des ordinateurs qui font ce que l’ancien savait faire, et les fabricants les leur fournissent. C’est un problème de la poule et de l’œuf.

ZEIT ONLINE : Cela vous préoccupe‐t‐il ?

L. T. : Je regarde cela comme un phénomène intéressant, mais cela ne me dérange pas, ce n’est pas pour cela que je travaille sur Linux. Je trouve ça simplement sympa lorsqu’une machine tourne sous Linux, mais cela ne me préoccupe pas particulièrement de savoir si oui ou non les autres l’utilisent. Je suis plutôt fier d’avoir autrefois lancé ce projet, mais je ne me dis pas chaque jour « Hé hé, encore une recherche Google, traitée par des serveurs sous Linux ! » Non, cela ne me préoccupe pas vraiment.
Certains marchés acceptent mieux Linux que d’autres, et nous atteignons une part de 20 % sur les serveurs.

ZEIT ONLINE : Comment trouvez‐vous la vidéo de vœux que Microsoft a envoyée à la Fondation Linux pour les 20 ans de Linux ?

L. T. : Je ne sais pas trop. C’est étrange, c’est amusant. Cela vient‐il vraiment de Microsoft ? Je veux dire, bien sûr que cela provient de Microsoft, mais ce pourrait être le fait d’une petite troupe.

ZEIT ONLINE : Microsoft contribue au développement de Linux, n’est‐ce pas ?

L. T. : Ils s’aident eux‐mêmes, dans la mesure où ils adaptent Linux à leur solution de virtualisation. C’est exactement de cette façon‐là que cela doit fonctionner : les gens doivent utiliser Linux pour leurs propres raisons, égoïstement. Car chacun a ses propres motifs pour modifier ceci ou cela, et tous sont heureux de travailler ensemble. Le cas de Microsoft n’est qu’un exemple parmi d’autres, même s’il est particulièrement amusant. Probablement ne s’agit‐il que d’un petit groupe planqué dans un recoin du campus Microsoft, qui se fait détester de tout le monde !

ZEIT ONLINE : Combien de personnes pourraient faire votre travail ?

L. T. : Nous fonctionnons en réseau et, à partir de là, il s’agit de confiance. La somme de connaissances techniques est énorme, mais il y a certainement quelques douzaines de gens qui pourraient faire mon travail. Ce n’est pas parce que je suis plus calé que les autres sur le plan technique que cela fait de moi un bon dirigeant et un bon gestionnaire, même si j’ai envie de le croire. Non, je suis un bon gestionnaire parce que les autres me font confiance. Ils ne croient pas forcément que je prends les meilleures décisions, mais ils ont confiance dans le fait que je revienne sur mes mauvaises décisions.

  • # 'dredi?

    Posté par (page perso) . Évalué à 3.

    C'est parce qu'on est Vendredi que les intertitres soulignent les trolls potentiels?

    ⚓ À g'Auch TOUTE! http://agauch.online.fr

    • [^] # Re: 'dredi?

      Posté par . Évalué à 2.

      C'est parce que tu es sur linuxfr. Mais alors en plus un Vendredi, tu pensais vraiment y réchapper?

      Pour chaque personne qui me plussoie, je frappe un fan de Justin Bieber.

    • [^] # Re: 'dredi?

      Posté par (page perso) . Évalué à 2.

      Ce sont tout simplement les intertitres du Zeit.

  • # Trop complexe

    Posté par . Évalué à 10.

    Linux est devenu trop complexe

    Heureusement Minix3 a été libéré ! (Licence BSD)

    Peut-être le prochain noyau des systèmes GNU...

  • # Tout faux

    Posté par . Évalué à -6.

    ZEIT ONLINE : M. Torvalds, vous déclariez récemment lors d’un débat public que la complexité de Linux vous inquiétait. Pourriez‐vous nous en dire plus ?

    Tanenbaum avait raison

    Cela pourrait changer, mais en ce moment j’utilise Fedora 14. Fedora 15 est une telle catastrophe… Il se pourrait bien qu’openSUSE soit mon prochain choix.

    openSUSE 12.1 est la pire version de distribution que j'ai utilisé depuis un bout de temps

    il est très difficile d’entrer sur le marché de la bureautique. En premier lieu, parce qu’on doit, en tant que vendeur, prendre en charge les divers accessoires qui peuvent être connectés à un ordinateur. Ils doivent tous être gérés par le logiciel. Le cas des smartphones est bien différent, car le système n’a besoin de se débrouiller qu’avec l’appareil lui‐même. Mais s’il est question que l’utilisateur connecte une carte graphique ou une imprimante à son ordinateur, alors il faut prendre en charge chacun des périphériques qu’il pourrait acheter.

    Je ne pense pas que ce soit une question de materiel (a part pour les cartes 3D mais mac os a les mêmes souçis).

    C'est plutôt une question d'interet et d'attractivité de la plateforme :
    Si Adobe sort Photoshop sur Linux à moins d'attirer une nouvelle population le résultat sera "Adobe c le mal" boycotte/idem pour Microsoft/Steam/Apple. Donc ils n'ont pas d'interet à éditer de "gros" logiciels dessus.

    Des petits éditeurs style ceux que l'ont trouve sur les "App store" ne pourront pas se faire connaitre car il n'existe pas d'app store qui centralise tout (hormis celui de ubuntu qui peine a décoller).
    Pour une bonne partie des utilisateur desktop Linux : Linux = gratuit
    Ceux qui voudraient faire de petits outils ou jeux sympa mais payant se ferait pourrire

    Bref c'est un cercle vicieux les édieurs de logiciels proprio ne sont pas les bienvenue sous Linux et sans ces éditeurs, une bonne partie des utilisateurs ne viendront pas.

    Par ailleurs une des grandes faiblesse des logiciels libres est qu'ils sont souvent gérer par des personnes trop perfectionnistes qui préfère sans arrêt améliorer des points qui n'interessent que peu de mondes alors qu'il reste des trous fonctionnels beant. (c'est spécialement vrai pour Redhat).

    Les noyaux Linux marchent bien car pour tout un tas d'intervenant ce n'est qu'un moyen d'animer leur produit ce n'est pas un élément clé de leur business.

    Pour les logiciels end user c'est une toute autre chose, la vente de logiciel est l'unique moyen de subsistence. Tous ceux qui on fait du libre payant se sont planté (sauf les bricolware qui fonctionnent a base de dons).

    • [^] # Re: Tout faux

      Posté par (page perso) . Évalué à 3.

      openSUSE 12.1 est la pire version de distribution que j'ai utilisé depuis un bout de temps

      Tu peux développer ? Parce que pour l'instant, j'ai surtout entendu le son de cloche inverse !

      • [^] # Re: Tout faux

        Posté par . Évalué à 1.

        Experience out of the box : Packagekit freeze à tout vas, le gestionnaire de paquet de Yast plante avant de téléchargé les paquets, la moitiée de l'interface Gnome Shell est en anglais, evolution freeze puis plante, la synchro evolution des contacts avec google ne fonctionne pas bien (freeze + plantage des backends), au premier lancement de libreoffice message d'erreur comme quoi il manque jre en première impression ça fait vraiment pas fini (par rapport à une fedora, ou debian).

        Sur Thinkpad T400, version 64bits, installation sur disque depuis le livecd GNOME. Je n'ai pas poussé l’expérience plus loin ni remonté de bugreport tellement la première utilisation était désastreuse.
        J'ai une Fedora 16 avec à peut près les mêmes version de GNOME 3.2 et je n'ai pour le moment aucun des soucis évoqué ci dessus.

        • [^] # Re: Tout faux

          Posté par . Évalué à 5.

          ou..ou est ce qu'il a appris à développer ?

          Vous voulez pas la jouer soft ? Je suis pas contraignant... vous voulez la jouer hard ? On va la jouer hard

    • [^] # Re: Tout faux

      Posté par . Évalué à 8.

      Regarde Minecraft et World of Goo, des jeux propriétaires et payants qui ont fait un carton. C'est sûr que vendre un éinième lecteur multimédia est complètement stupide, en revanche les jeux ont leur place. Steam aurait du être porté sur Linux.

      Les outils Adobe c'est réservé à une élite qui a les moyens, et ils se situent plutôt chez Apple ou Microsoft donc pas étonnant qu'on ne les trouve pas sur Linux.

      • [^] # Re: Tout faux

        Posté par . Évalué à 3.

        Les outils Adobe c'est réservé à une élite qui a les moyens, et ils se situent plutôt chez Apple ou Microsoft donc pas étonnant qu'on ne les trouve pas sur Linux.

        Tu généralises.. Framemaker ce serait très sympa d'avoir ça sur des stations Linux.

        • [^] # Re: Tout faux

          Posté par . Évalué à -1.

          Tu généralises.. Framemaker ce serait très sympa d'avoir ça sur des stations Linux.

          Tu veux dire, comme la version 5.5.6, en 1997 ?

          Aol*, since 1997.

          *Adobe On Linux

      • [^] # Re: Tout faux

        Posté par (page perso) . Évalué à 4.

        Je peux te dire que si tous les outils d'Adobe était sous Linux, on les achèterais dans mon laboratoire ! On les as sous Mac et Windows, et il n'y a aucune raison pour lesquelles on ne les aurait pas sous GNU/Linux.

        Ceci dis, Adobe ne les vends pas et personnellement, cela m'arrange ;-)

      • [^] # Re: Tout faux

        Posté par . Évalué à 3.

        Idem pour Neverwinter Nights qui était loin d'être un petit jeu indie. (Faut dire que le créneau "jeu de rôle" répond pas mal à la culture du geek linuxien). Par contre ils se sont mis l'assez importante communauté NWN linux à dos car la version 2 a été portée sur Direct3D, et Windows only.

        Et je ne parle même pas de Quake 3.

    • [^] # Re: Tout faux

      Posté par (page perso) . Évalué à 8.

      Ceux qui voudraient faire de petits outils ou jeux sympa mais payant se ferait pourrire

      C'est vrai que des trucs comme le Humble Indie vont tout à fait dans ton sens.

      « Rappelez-vous toujours que si la Gestapo avait les moyens de vous faire parler, les politiciens ont, eux, les moyens de vous faire taire. » Coluche

    • [^] # Re: Tout faux

      Posté par . Évalué à 4.

      Je ne pense pas que ce soit une question de materiel (a part pour les cartes 3D mais mac >os a les mêmes souçis).

      Non, MacOs n'a pas les même soucis. Seul un nombre limité de puces graphiques est utilisé sur les Macs (Il n'y a qu'à voir les plaintes des mac users quand à la non-disponibilité de cartes hat de gamme). Apple, ne publiant pas le code source des drivers vidéo, ne doit pas avoir beaucoup de mal à avoir les specs complètes des puces sous NDA

      • [^] # Re: Tout faux

        Posté par . Évalué à 2.

        Sisi sous MacOS X les pilotes sont très mauvais, les performances sont mauvaises, il y a souvent beaucoup de problèmes (bugs, lenteurs, plantages) sur le peu de jeux qui tournent sous MacOS.

    • [^] # Re: Tout faux

      Posté par (page perso) . Évalué à 5.

      Matlab, Ansys, Comsol, ifort, IDL... tournent sous linux et les universitaires y laisse un paquet d'Euros

      Cela fait des années qu'on attend un CATIA sous Linux (qui marche d'ailleur déjà chez eux).

      Les éditeurs de logiciels proprio SONT les bienvenues. Ne sont pas bienvenue les virus grand public à la "adaube" qui n'apporte rien au final...

      PS : a noter qu'Ansys est une énorme DAUBE pour le prix qui le vende. Lors de l'installation, il y a un paquet de fichier .exe et on apprends via un file qu'il sont au format PE et tournent avec la CLI de C# ! Evidement, cela se traine lamentablement et pose quelques soucis avec X-Windows. Pour le prix du logiciel, on aimerait avoir du natif.

      PPS : A noter que tous les gros logiciels sont livrés avec tout (leur java, leur...) et donc tournent souvent très bien sous tous les GNU/Linux (jamais eu de vrai problème sous debian par exemple).

      • [^] # Re: Tout faux

        Posté par . Évalué à 0.

        Matlab, Ansys, Comsol, ifort, IDL... tournent sous linux et les universitaires y laisse un paquet d'Euros

        Les universitaires n'y laissent pas grand chose en comparaison des industriels ;-)

        Cela fait des années qu'on attend un CATIA sous Linux (qui marche d'ailleur déjà chez eux).

        Tu n'as qu'à prendre NX qui n'a rien à envier à Catia (demande à Daimler-Benz, Nissan, Fiat, GM & co.)

        PS : a noter qu'Ansys est une énorme DAUBE pour le prix qui le vende. Lors de l'installation, il y a un paquet de fichier .exe et on apprends via un file qu'il sont au format PE et tournent avec la CLI de C# ! Evidement, cela se traine lamentablement et pose quelques soucis avec X-Windows. Pour le prix du logiciel, on aimerait avoir du natif.

        J'imagine que tu parles des GUI car côté Solver c'est du natif (à la fois en méca et en fluide)

        • [^] # Re: Tout faux

          Posté par (page perso) . Évalué à 3.

          On ne paye pas le prix des industriels mais depuis quelques années, le tarifs montent bien plus vite que l'inflation. Par exemple, Comsol a été multiplié par 5. La palme du pire a été un module Ansys qui a pris un facteur 7 en 2 ans... Heureusement que nous n'en avons pas une utilisation intensive !

          Bien sur, les solver d'Ansys sont natifs ! C'est le workbench qui m'a l'air d'être une daube de première.

          Sinon, nous utilisons en pratique Soliworks dans mon labo (c'est aussi Dasasult mais beaucoup plus abordable) mais a petite dose par les expérimentateurs afin de dessiner les futurs manip. Rien de crucial de ce coté là. Je vais regarder du coté de NX mais à vrai dire, c'est une activité tellement annexe chez nous que mon point est assez faible dans les décisions ;-)

      • [^] # Re: Tout faux

        Posté par (page perso) . Évalué à 1.

        On rencontre le même problème avec des solutions implémentées de façon "historique" dans les labos, comme Labview (instrumentation) , le truc lourdingue par excellence et avec sa petite mise à jour régulière. On a une solution type (Qt+C) mais à chaque nouveau matériel il faut bien creuser la doc...
        Il y a quand même quelques alternatives à Matlab ou IDL (octave ou des solutions C couplées : Open Cv, Fftw, Vtk etc.), mais elles ne sont pas toujours en adéquation à 100% avec la demande.
        En CAO ou éléments finis, c'est vrai que c'est assez vide, même pour dessiner des pièces élémentaires...

        • [^] # Re: Tout faux

          Posté par (page perso) . Évalué à 2.

          Exact, à part un ingénieur en instrumentation qui ne supportais pas LabView, tous les autres expérimentateurs ont fait ce choix là. Du coup, le marché est captif pour National Instrument. En interne, la gestion des versions des différents programmes de pilotage est du coup ... folkorique. Si quelqu'un sais comment gérer de manière simple dans le temps et de manière collaborative les programmes LabView, je suis preneur.

          De plus en plus de chercheur utilisent Python à la place de Matlab (ou Octave ou Scilab...). On se retrouve cependant avec le même problème que la suite MS Office, c'est jamais compatible à 100%. Si c'est la suite elle-même (ou Matlab), la non compatibilité d'une version à une autre passe mieux...

    • [^] # Re: Tout faux

      Posté par . Évalué à 1.

      Des petits éditeurs style ceux que l'ont trouve sur les "App store" ne pourront pas se faire connaitre car il n'existe pas d'app store qui centralise tout (hormis celui de ubuntu qui peine a décoller).
      Pour une bonne partie des utilisateur desktop Linux : Linux = gratuit
      Ceux qui voudraient faire de petits outils ou jeux sympa mais payant se ferait pourrire

      Pour rire ?
      Nan sinon, pour le programmeur, l'avantage d'un App Store ne réside pas dans le logiciel qui centralise les installations et désinstallations, cet avantage, il vient des distributions Linux et des BSD, et ne constitue pas l'élément récurrent facilitant l'arrivée de logiciels d'éditeurs tiers, ce qui constitue l'avancée, c'est qu'en plus du système centralisé d'installations et de désinstallations, les AppStores sont fournis avec des kits de développement suivis, permettant facilement de faire évoluer le système et le logiciel tiers. Un App store constitue finalement pour un éditeur la garantie que son logiciel fonctionnera sur telle plateforme , et l'évolution du SDK garantira le fonctionnement du logiciel sur les plateformes ultérieures ( dans une certaine limite ).

      Cette chose ( l'API stable dans un environnement de développement garantissant que les fonctions obsolètes fonctionnent toujours un certain temps ) c'est ce qui fait l'avantage du code win32 formé par .net sous Visual Studio par rapport aux solutions plus proches de la machine ( désolé pour les gros mots ). Ça existe aussi sous Linux. Java ( Dalvik), Mono, Air ( euh pardon ), mais c'est pas la voie " prioritaire " de développement qui est par ailleurs portée sous Windows par .net.

      Et compte tenu de la complexité et des évolutions importantes de la pile graphique et de la pile sonore, cet outil " prioritaire " manque: les éditeurs de soft ont besoin qu'on leur balise le terrain ( parce qu'ils ont pris cette habitude avec Windows et MacOS ).

      Sedullus dux et princeps Lemovicum occiditur

      • [^] # Re: Tout faux

        Posté par (page perso) . Évalué à 2.

        Les "Stores" ont aussi un avantage (ou un inconvénient) comparé au dépôt des distributions, la personne dépose elle même son application et en gère elle même les évolutions. Je suis sur qu'un paquet d'application que l'on trouve dans l'AppleStore aurait un mal fou à intégrer les dépôts debian par exemple ;-)

  • # nouveau langage ?

    Posté par . Évalué à 2.

    Cela me ferait marrer que Linus se mette à écrire un nouveau langage pour rendre simple, ce qui est complexe avec le C (manipulation de structure de donné complexe notamment).

    "La première sécurité est la liberté"

    • [^] # Re: nouveau langage ?

      Posté par . Évalué à -1.

      C++ ? :-)

      • [^] # Re: nouveau langage ?

        Posté par . Évalué à 1.

        C++ fait un peu de gestion de mémoire dans ton dos, c'est pour cela qu'il n'en veut pas pour faire un OS.

        Mais je pense qu'il doit être possible de définir un langage purement statique (en gros se transforme un instruction C) en laissant la mémoire à gérer par l'utilisateur, mais avec plein de merdouille C en moins.

        "La première sécurité est la liberté"

        • [^] # Re: nouveau langage ?

          Posté par (page perso) . Évalué à 5.

          Vala ?

        • [^] # Re: nouveau langage ?

          Posté par . Évalué à 3.

          ada?

          • [^] # Re: nouveau langage ?

            Posté par . Évalué à 1.

            impossible ada dispose d'un runtime proche d'un OS.

            "La première sécurité est la liberté"

            • [^] # Re: nouveau langage ?

              Posté par . Évalué à 1.

              Tellement impossible qu'il existe un portage de SOS en Ada ?

              Plus sérieusement, c'est vrai que le runtime Ada est assez important, mais rien n'empêche d'en implémenter un pour un kernel (et pas seulement pour des choses simples comme les exceptions, mais aussi pour des choses moins évidentes comme les tâches, les objets protected, etc). Ça n'est pas plus déraisonnable que de faire une implémentation de la libC.

              Cela étant dit, il est également possible d'écrire un kernel en s'imposant quelques Pragma Restrictions pour être sûr de ne rien utiliser qui nécessite le runtime. Ça laisse quand même pas mal de choses sympas (le système de types et les clauses de représentation par exemple, très utiles pour un kernel). Il ne faut pas beaucoup plus d'une dizaine de minutes pour écrire from scratch un kernel en Ada minimaliste (i.e. qui boote) compilé avec gnat

              • [^] # Re: nouveau langage ?

                Posté par . Évalué à 2.

                Le runtime Ada gère l'allocation mémoire, le scheduling de tache et l'échange inter-tache. Que reste-t-il à un kernel ada dans ce cas ?

                "La première sécurité est la liberté"

                • [^] # Re: nouveau langage ?

                  Posté par . Évalué à -1.

                  Les drivers :)

                  Mais sinon, le code de gestion de la mémoire, du scheduling des tâches et des échanges inter-tâches, il faut aussi l'écrire pour un kernel en C, alors au final qu'on le fasse dans un truc qu'on appelle "runtime" ou ailleurs, c'est pareil, c'est juste du code à linker avec le "programme" principal.

                  Mon propos était juste de dire qu'on peut parfaitement écrire un kernel en Ada et que le runtime n'est pas forcément un problème. Rien qu'en se limitant à la partie du langage qui ne nécessite pas de runtime, on bénéficie de beaucoup de choses sympas, comme je le dis plus haut. Pour le reste, écrire le code de support n'est pas forcément difficile, et en tout état de cause largement pas impossible.

              • [^] # Re: nouveau langage ?

                Posté par (page perso) . Évalué à 2.

                Il ne faut pas beaucoup plus d'une dizaine de minutes pour écrire from scratch un kernel en Ada minimaliste (i.e. qui boote) compilé avec gnat

                Zen Masta say : « Show us the code »

                * Ils vendront Usenet^W les boites noires quand on aura fini de les remplir.

    • [^] # Re: nouveau langage ?

      Posté par . Évalué à 2.

      Il a commencé avec sparse: ajouter des annotations quelque part ça revient à modifier le C..

      • [^] # Re: nouveau langage ?

        Posté par . Évalué à 2.

        C'est une manière d'augmenter le typage.

        Il me semble qu'il existe une théorie, au dessus du lambda calcul qui permet d'avoir des types paramétriques.

        "La première sécurité est la liberté"

    • [^] # Re: nouveau langage ?

      Posté par . Évalué à 4.

      Si il pouvait déjà par prendre en main la gestion du son et le remplacement de X.... :-)

      • [^] # Re: nouveau langage ?

        Posté par . Évalué à 2.

        Je remplacerais "le remplacement de X" par "l'évolution de X", ceux qui veulent tuer X ont quasi-systématiquement des arguments mal fichu..

      • [^] # Re: nouveau langage ?

        Posté par (page perso) . Évalué à 2.

        le remplacement de X....

        Pourquoi et surtout par quoi remplacer X11 ?

        * Ils vendront Usenet^W les boites noires quand on aura fini de les remplir.

        • [^] # Re: nouveau langage ?

          Posté par . Évalué à 3.

          Il y a Wayland dont c'est le but, il me semble.

          • [^] # Re: nouveau langage ?

            Posté par . Évalué à 3.

            Il y a Wayland dont c'est le but, il me semble.

            Pas vraiment: Wayland fournit seulement un système d'affichage local, alors que X a aussi la "transparence réseau" donc Wayland ne fournit qu'un sous-ensemble des fonctionnalités offertes par X.
            Pour remplacer X par Wayland, si tu veux vraiment avoir l'équivalent d'X alors tu peux soit:
            1- faire tourner X au dessus de Wayland.
            2- soit utiliser un autre protocole réseau.
            Le problème avec (2) étant bien sûr qu'il y aura probablement des solutions différentes avec chacune son lot de bugs..

        • [^] # Re: nouveau langage ?

          Posté par . Évalué à 3.

          X permet:

          • de lancer plusieurs serveurs graphiques sur une même cible :
            Aucun gestionnaire de bureau n'utilise cette fonctionnalité. On pourrait imaginer un Gnome lançant un serveur X dans une fenêtre pour un logiciel particulier , un autre serveur X pour un autre logiciel, voire qu'un logiciel par onglets puisse utiliser un serveur graphique pour chacun des onglets. Mais non, rien de tout ceci n'est utilisé. Pire, sur un même serveur, X peut créer des écrans ( la fonction screen ) permettant de gérer indépendamment chacune des applications graphiques, cette fonction n'est utilisée - et n'a été redécouverte - que pour bidouiller ( hacker ) les matériels de type optimus ( GPU Intel intégré au processeur + IGP NVidia sur la carte mère ).

          • de connecter un bureau distant :
            Avec une latence énorme compte tenu de la quantité de données qui transitent. On se retrouve très facilement avec des temps de réponse supérieurs à la seconde. Alors qu'un logiciel bien conçu doit pouvoir être utilisé plus rapidement en console ( via ssh par exemple ).

          • de lancer un serveur graphique regroupant toutes les applications graphiques :
            Comme tous ses concurrents.

          • d'utiliser plusieurs claviers ou souris :
            pas ou peu de concurrence.

          X ne permet pas :
          - D'utiliser 2 ou plusieurs GPU en séparant la RAM allouée à chaque GPU.
          Les concurrents savent le faire.

          Donc en gros: les avantages de X ne sont pas utilisés, les inconvénients eux sont subis.

          Moi je pose la question en fait : Pourquoi utiliser X ? ;)

          Sedullus dux et princeps Lemovicum occiditur

          • [^] # Re: nouveau langage ?

            Posté par (page perso) . Évalué à 4.

            de connecter un bureau distant :
            Avec une latence énorme compte tenu de la quantité de données qui transitent. On se retrouve très facilement avec des temps de réponse supérieurs à la seconde. Alors qu'un logiciel bien conçu doit pouvoir être utilisé plus rapidement en console ( via ssh par exemple ).

            Je ne peux pas laisser dire ça. Sur un réseau local, il n'y a pas de temps de latence et c'est probablement un des cas d'utilisation les plus importants. Sur les réseaux non locaux les débits montants des particuliers sont certes limitants pour la communication, mais si tu as une connexion non bridée, cela marche tout de suite mieux (en fait très bien). De plus quelques astuces permettent de réduire la quantité de données transitant, notamment abaisser la profondeur (bits/couleur) de l'affichage et utiliser un toolkit bien carré et sans dégradé.

            Au contraire, je pense que lorsque les très très hauts débits se populariseront X sera l'objet d'un regain d'intérêt puisqu'après tout pour tout avoir «dans le cloud» il suffit de transformer sa machine locale en terminal X.

            • [^] # Re: nouveau langage ?

              Posté par (page perso) . Évalué à 3.

              Je ne peux pas laisser dire ça. Sur un réseau local

              Forcément, si tu te place dans un cas particulier...

              c'est probablement un des cas d'utilisation les plus importants

              Faut voir. Pour ma part, je ne fais de l'export display que à distance (jamais dans le même réseau local, pas le même provider net des deux côtés, etc). Et même avec une belle connexion (celle du boulot) ben ça rame comme c'est pas permis.
              NX à côté est une merveille.
              TSE à côté s'en sort beaucoup beaucoup mieux.

              lorsque les très très hauts débits se populariseront X sera l'objet d'un regain d'intérêt

              Ha ok. Donc en fait, il faut attendre que les connexion s'améliorent pour que X devienne intéressant... mouai

              après tout pour tout avoir «dans le cloud» il suffit de transformer sa machine locale en terminal X

              Ou pas, ça n'a pas grand chose à voir...

              • [^] # Re: nouveau langage ?

                Posté par (page perso) . Évalué à 2.

                > Je ne peux pas laisser dire ça. Sur un réseau local
                Forcément, si tu te place dans un cas particulier...

                Vu qu'on parle grosso-modo de débit de données, le type de réseau n'est peut-être pas un paramètre à omettre non?

                > lorsque les très très hauts débits se populariseront X sera l'objet d'un regain d'intérêt
                Ha ok. Donc en fait, il faut attendre que les connexion s'améliorent pour que X devienne intéressant... mouai

                Tu veux dire que tu devras atteindre que les connexions s'améliorent pour que X devienne intéressant pour toi. C'est déjà intéressant pour ceux qui travaillent en réseau local. Ensuite il y a déjà des endroits où on a des très hauts débits, et j'ai déjà travaillé de longues heures en session distante sur des machines séparées de 500, 600km sans que la latence ne soit véritablement gênante (pourtant, je suis chatouilleux). Ensuite je rappelle que l'asymétrie des débits de communication est un artéfact introduit par les fournisseurs qui n'a pas de raison technique: si cette asymétrie disparaissait, on aurait de bien meilleurs performances.

                Quels genres de programmes utilises-tu en connexion X déportée?

          • [^] # Re: nouveau langage ?

            Posté par (page perso) . Évalué à 1.

            lançant un serveur X dans une fenêtre pour un logiciel particulier

            $ man Xephyr

            les inconvénients eux sont subis.

            Une liste détaillée de ces inconvénients serait la bienvenue.

            * Ils vendront Usenet^W les boites noires quand on aura fini de les remplir.

            • [^] # Re: nouveau langage ?

              Posté par . Évalué à 3.

              man Xephyr

              même si Xephyr n'existait pas , il existe des moyens d'utiliser cette chose dans tous les GDB . Mais ça serait pas mal si les GDB le proposaient... Genre par exemple t'as un Flash qui fait dégager ton serveur X, tu peux récupérer tes logiciels parce qu'ils sont sur un autre serveur X. Tu vois ? Comme sous Windows depuis des siècles .

              Une liste détaillée de ces inconvénients serait la bienvenue.

              Bien sûr:
              - Optimus : pas de partage de l'adressage mémoire.
              - Optimus : pas de partage du tampon mémoire.
              - OpenGL : Pas de partage de la mémoire entre plusieurs applications.
              - Crash du X entraîne le crash des applications graphiques.

              Sedullus dux et princeps Lemovicum occiditur

          • [^] # Re: nouveau langage ?

            Posté par . Évalué à 1.

            Ça c'est encore un argument mal fichu dont je parlais plus haut.

            Pour tout logiciel, il y a les problèmes d'API et les problèmes d'implémentations, X comme tout les logiciels à les deux, et il est important de distinguer les deux:
            -les problèmes d'implémentations ne sont pas spécifiques à X, c'est juste qu'il n'y a pas beaucoup de personnes qui travaillent sur les couches basses GUI Linux, changer de couche basse ne résoudra pas ce problème.
            -les problèmes d'API, là OK s'il y a un problème fondamental sur l'API d'X, il faudrait remplacer X.

            Alors on t'écoutes: dans ta liste de "problèmes" qu'est-ce qui dépend de l'implémentation, qu'est-ce qui dépend de l'API?

            • [^] # Re: nouveau langage ?

              Posté par . Évalué à 3.

              Alors on t'écoutes: dans ta liste de "problèmes" qu'est-ce qui dépend de l'implémentation, qu'est-ce qui dépend de l'API?

              Je m'en fous royalement.

              Quand tu vas t'adresser à un utilisateur qui a besoin d'un OS et qui veut quelque chose avec lequel tu puisses l'aider, tu vas lui demander , évidemment , d'être conscient d'un certain nombre de choses. Mais est-ce que tu vas lui demander si Pulse Audio crashe, d'être capable de dire que ça vient des drivers ou du Kernel ou des drivers de la souris ?

              X est un super machin qui peut tout faire, sauf partager le tampon mémoire et l'adressage mémoire entre plusieurs GPU, ce qui est " un peu " ennuyeux depuis Optimus.
              Mais le centième des fonctionnalités de X seulement est utilisé par Gnome ou KDE, laissant l'utilisateur dans la merde quand son unique Xserver crashe ou quand il essaie de faire fonctionner son GPU Intel intégré à son processeur sur une machine Optimus qui a décidé de donner la priorité à sa CG intégrée NVidia, avec de piètres capacités de calcul.

              Ton voisin du dessus m'a cité Xephyr, mais le fait est que Tout ce à quoi X est utilisé aujourd'hui, à travers ton GDM, c'est à être un clône de Windows+Aero ( KDE ) ou un clone de MacOS ( GNOME ), et ceci aussi bien sous Ubuntu , ce qui est " un peu " ce qu'on attend d'Ubuntu, que sous Fedora, ce qui est par contre un problème.
              D'où ma question :

              A quoi sert X par rapport aux concurrents ?

              Sedullus dux et princeps Lemovicum occiditur

              • [^] # Re: nouveau langage ?

                Posté par . Évalué à 1.

                Alors on t'écoutes: dans ta liste de "problèmes" qu'est-ce qui dépend de l'implémentation, qu'est-ce qui dépend de l'API?

                Je m'en fous royalement.

                C'est ton droit, mais dans ce cas là tes critiques n'ont pas grande valeurs..

                Mais est-ce que tu vas lui demander si Pulse Audio crashe, d'être capable de dire que ça vient des drivers ou du Kernel ou des drivers de la souris ?

                Non, mais s'il me dit, ça vient de toto, il faut remplacer toto quand le problème vient d'ailleurs ou bien que corriger toto suffit, je ne vais pas prendre son commentaire au sérieux..

                X est un super machin qui peut tout faire, sauf partager le tampon mémoire et l'adressage mémoire entre plusieurs GPU, ce qui est " un peu " ennuyeux depuis Optimus.

                A l'heure actuelle oui, mais s'il y a suffisamment de monde pour changer l'implémentation, ça peut changer: http://www.phoronix.com/scan.php?page=news_item&px=ODA1OQ
                Donc ce n'est pas un problème fondamental d'X mais un problème d’implémentation, si tu remplaces X par W et qu'une nouvelle fonctionnalité hardware apparaisse il n'y a pas de raison que cette nouvelle fonctionnalité soit prise en compte moins lentement puisque le problème à la base est le manque de développeurs..

                Mais le centième des fonctionnalités de X seulement est utilisé par Gnome ou KDE, laissant l'utilisateur dans la merde quand son unique Xserver crashe

                Alors
                1) les fonctionnalités non utilisée de X sont là pour la compatibilité, j'ignore si elles réduisent vraiment la vitesse d'évolution de l'implémentation d'X, et toi aussi..
                2) une chose que tu oublie (ignore?), c'est que parmi les vrai problèmes d'X il y avait la conception d'Xlib, donc pour palier à ça XCB a été créer sauf que Gnome(GTK) ou KDE(Qt) n'ont pas utiliser XCB..
                Mais X est le seul coupable, bien sûr, les boucs émissaires c'est tellement plus facile quand on ne cherche pas vraiment à comprendre..

                • [^] # Re: nouveau langage ?

                  Posté par . Évalué à 2.

                  C'est ton droit, mais dans ce cas là tes critiques n'ont pas grande valeurs..

                  Je n'ai pas envie de placer la discussion sur la nécessité de virer Xorg. Oui, Xorg est une architecture trop complexe pour être utilisée sur des PC destinés à faire de la création graphique ou du jeu ( c'est mon opinion propre ). Mais la première chose que je regrette, ce n'est pas l'existence de X, c'est la monoculture et son tissage autour des distributions toutes basées sur X.

                  S'il fallait supporter plusieurs architectures, dont une en mode client-serveur, une en mode " pilote " , comme le GDI ou Android, une en mode HTML5 comme HP-WebOS et ChromeOS, pour nos applications, nous nous arrangerions pour créer une structure réellement indépendante de l'architecture pour fonctionner ( et c'est bien ce que fait Freedesktop ).
                  Et nous aurions la possibilité réelle de tester les différents cas sans que ça " chamboule tout ". Nous aurions purgé le code de tout ce qui est " bas niveau " ( Xlib et XCB ) pour laisser les maîtres de Qt et de la GLib gérer l'interface .

                  Nous ne supportons que l'architecture client serveur, en nous voilant la face sur la propreté de l'implantation et du code. Nous sommes des noobs de l'architecture logicielle. ça va casser.

                  C'est pour ça que je ne veux pas parler de l'évolution de X11 ou de Xserver. Ni de son implémentation et de ses limites. Il faut une alternative.

                  A l'heure actuelle oui, mais s'il y a suffisamment de monde pour changer l'implémentation, ça peut changer: http://www.phoronix.com/scan.php?page=news_item&px=ODA1OQ

                  Ils disent justement le contraire. Ils ont fait un hack qui fait ce que j'ai écrit 3 posts plus haut. Mais ils ne peuvent pas toucher à la gestion du tampon mémoire.
                  Tu sais ce que sera " enhanced Buldozer " de chez AMD ? Un très très gros problème pour X11. Les fonctions OpenGL découplées en jeux d'instructions au sein même des jeux AMD64, AVX, etc... Un sacré bordel. avec un multiGPU dont la quantité pourrait être changeante en fonction des réels besoins graphiques à chaque instant. Comment X11 va simplement différentier le cache du processeur de la mémoire graphique , dont la quantité devrait bouger à chaque seconde ?
                  Non X11 nécessitera un passage à un éventuel X12 avant de pouvoir faire ce qui sera dans nos machines en 2012, en incluant soit un Wayland se chargeant de définir les tampons, soit un socle plus important encore dialoguant avec le scheduler de l'OS !

                  si tu remplaces X par W et qu'une nouvelle fonctionnalité hardware apparaisse il n'y a pas de raison que cette nouvelle fonctionnalité soit prise en compte moins lentement puisque le problème à la base est le manque de développeurs..

                  Tu m'expliques alors pourquoi , puisque NVidia réécrit sa propre version de la XLib, il a pas fourni les drivers capables de gérer son propre matos ? ( Optimus ) Non, non, c'est un problème structurel.
                  D'ailleurs c'est dans ton lien :

                  David also shares, "To make this as good as Windows we need to seriously re-architect the X server + drivers. At the moment you can't load an X driver without having a screen to attach it to, I don't really want a screen for the slave driver, however I still have to have one all setup and doing nothing and hopefully not getting in the way. We'd need to separate screen + drivers a lot better. Having some sort of dynamic screens would probably fall out of this work if someone decides to actually do it."

                  Mais je suis d'accord: tout n'est qu'un manque de développeurs. :)

                  Sedullus dux et princeps Lemovicum occiditur

          • [^] # Re: nouveau langage ?

            Posté par . Évalué à 1.

            • de connecter un bureau distant : Avec une latence énorme compte tenu de la quantité de données qui transitent. On se retrouve très facilement avec des temps de réponse supérieurs à la seconde. Alors qu'un logiciel bien conçu doit pouvoir être utilisé plus rapidement en console ( via ssh par exemple ).

            Windows le fait depuis très longtemps et avec un protocole bien plus optimisé. Comme quoi, il n'y a pas besoin d'une architecture client-serveur.

            Et quand je dis optimisé, j'ai pu accéder à un Windows derrière une ligne RTC chez AOL et c'était assez fluide.

  • # Premier commentaire du Zeit

    Posté par . Évalué à 9.

    Je traduis ici le premier commentaire du Zeit qui est bien noté sur leur site et m'a fait sourire un peu jaune :

    «Linux aurait depuis longtemps vaincu sur le Desktop

    Si l'État avait investi des milliards dans ce système au lieu de payer des rentes à l'autre côté de l'Atlantique pour un logiciel dont on n'a pas le code source et implémente des portes dérobées pour les services de renseignement étrangers. Pour la sécurité nationale c'est fatal»

    Ceci dit, avis très personnel, il n'est pas trop tard pour l'Union Européenne de faire de Linux son système privilégié, pour des raisons d'indépendance stratégique, de libre concurrence, de soutien du tissu des entreprises locales, etc…

    Sinon, juste après, un autre se réjouit que sa distrib supporte mieux sa vieille imprimante que seven.

    • [^] # Re: Premier commentaire du Zeit

      Posté par (page perso) . Évalué à 6.

      pour un logiciel dont on n'a pas le code source

      À partir de 1000 licence (iirc), tu peux demander les sources à MS

      « Rappelez-vous toujours que si la Gestapo avait les moyens de vous faire parler, les politiciens ont, eux, les moyens de vous faire taire. » Coluche

      • [^] # Re: Premier commentaire du Zeit

        Posté par (page perso) . Évalué à 9.

        Et tu peux les compiler et avoir un Windows identique à celui que vend Microsoft ? C'est une vraie question car si ce n'est pas le cas rien ne nous assure que Microsoft donne les sources réelles.

        • [^] # Re: Premier commentaire du Zeit

          Posté par . Évalué à 1.

          J'suis p'têt bête un, mais sinon quel intérêt d'avoir les sources ? Pour se faire mousser ?

          "The trouble with quotes on the internet is that it’s difficult to discern whether or not they are genuine.” Abraham Lincoln

          • [^] # Re: Premier commentaire du Zeit

            Posté par (page perso) . Évalué à 3.

            quel intérêt d'avoir les sources ? Pour se faire mousser ?

            Les sources permettent plusieurs choses:
            - pallier une documentation floue, en levant l'ambigüité à la racine;
            - illustrer l'utilisation de certaines fonction ou bibliothèques;
            - mieux comprendre l'organisation d'un logiciel.

        • [^] # Re: Premier commentaire du Zeit

          Posté par . Évalué à 2.

          Mouaip...
          Il y a quand même le contrat que MS signe avec ses clients et je ne les vois pas joué à ça avec leurs gros clients (le ratio bénéfice/risque me semble pas terrible).

          Amha, le vrai soucis est que même avec accès aux sources pour un client, ben l'accès reste restreint au client avec clause de non-divulgation j'imagine. Du coup il manque le libre accès et il est difficile pour un client isolé d'investir dans une analyse poussée du code. Ce qui est en revanche possible avec la communauté autour de linux.

        • [^] # Re: Premier commentaire du Zeit

          Posté par (page perso) . Évalué à 2.

          Si je me souviens bien de ce qui s'était dit avec pbpg, ils ne peuvent pas utiliser la version compilée¹ à partir des sources distribuée (je ne sais pas s'ils peuvent tester la version compiler pour voir si elle réagit de la même façon).

          ¹: la raison principale doit être pour une question de support et de compatibilité des pilotes.

          « Rappelez-vous toujours que si la Gestapo avait les moyens de vous faire parler, les politiciens ont, eux, les moyens de vous faire taire. » Coluche

        • [^] # Re: Premier commentaire du Zeit

          Posté par . Évalué à 5.

          Si tu ne peux les compiler qu'avec un compilateur Microsoft dont tu n'as pas les sources, ça ne garantit rien du tout.. :°

          THIS IS JUST A PLACEHOLDER. YOU SHOULD NEVER SEE THIS STRING.

      • [^] # Re: Premier commentaire du Zeit

        Posté par (page perso) . Évalué à 2.

        A l'université, on utilise bien plus de 1000 Windows, jamais entendus parlé des sources...

        Je pense que c'est quand même un peu plus compliqué pour avoir les sources !

        • [^] # Re: Premier commentaire du Zeit

          Posté par (page perso) . Évalué à 2.

          1. Il faut en faire la demande
          2. Je pense qu'il y a sans doute d'autres conditions évidentes (NDA, tout le personnel ne doit pas y avoir accès…
          3. Mon chiffre est sorti de mémoire, c'est peut-être beaucoup plus grand.

          « Rappelez-vous toujours que si la Gestapo avait les moyens de vous faire parler, les politiciens ont, eux, les moyens de vous faire taire. » Coluche

  • # Taille du noyau

    Posté par (page perso) . Évalué à 9.

    La première version de Linux avait 10 000 lignes de code.
    Aujourd’hui, nous avons environ 15 millions de lignes de code

    Pour ajouter de l'eau au moulin, voici un graphe que j'ai réalisé il y a quelques jours. Il représente l'évolution de la taille du tar.bz2 des sources de Linux en fonction du numéro de version :

    Taille linux.tar.bz2 basse résolution

    On voit que l'évolution est quasi exponentielle.

    L'article original (et le graphe en plus grande résolution) est sur mon blog, il y a les données que j'ai utilisées ainsi que le fichier gnuplot qui a servi à générer le graphe.

    On peut ainsi extrapoler que linux-3.19.tar.bz2 pèsera 100 Mo.

    • [^] # Re: Taille du noyau

      Posté par (page perso) . Évalué à 5.

      Comme cela a déjà été dit par Ted Ts'o sur la LKML ce graphique ne reflète évidemment pas la complexité du code. Juste sa taille. L'immense majorité se retrouve dans les pilotes.

      Mais le graphique reste très intéressant à regarder.

      • [^] # Re: Taille du noyau

        Posté par . Évalué à 9.

        La taille d'un noyau compilé reflète mieux la complexité du noyau.

        Noyau 2.4.37 allnoconfig: vmlinux:590 Ko
        Noyau 3.1 allnoconfig: vmlinux:1885 Ko
        Rapport: 3,2
        Ça représente le code inertiel du coeur du système (gestion de la mémoire et du CPU), sans aucune gestion matérielle.

        Noyau 2.4.37 avec support matériel minimal (generic ATA + VGA console + AC97 + RTL8139 + IPv4 + UHCI+OHCI+HID + SMP) sur ma machine: vmlinux:1382 Ko
        Noyau 3.1 compilé avec les mêmes options: vmlinux: 4571 Ko (et seulement 4056 Ko si on vire SMP)
        Rapport: 3,3
        Ça représente le code inertiel des sous-systèmes de base: PCI, entrées/sorties disque, VFS, pile réseau, ATA, USB.
        Ces sous-systèmes ont l'air d'avoir augmenté dans les mêmes proportions que le coeur du système.

        Enfin, le code complet:
        Taille de linux-2.4.37.tar non comprimé: 175 Mo
        Taille de linux-3.1.tar non comprimé: 454 Mo
        Rapport: 2,6

        Paradoxalement, bien que le code central du noyau (coeur+sous-systèmes de base) soit en proportion, beaucoup plus petit que le code des pilotes (4571 Ko de code binaire correspond peut-être à 3 ou 4 fois plus en taille source, soit, au maximum une vingtaine de méga sur 454, soit moins de 5% du code total) il semblerait que la complexité d'un noyau basique (facteur environ égal à 3.3) ait un peu plus augmenté que le nombre (multiplié par la taille) des pilotes gérés (facteur environ égal à 2.6).

        Tous ces chiffres sont à prendre avec des pincettes, mais j'espère que ça donne une idée de l'évolution.

    • [^] # Re: Taille du noyau

      Posté par . Évalué à 2.

      Je ne sais pas comment vous avez réparti les unités sur l'axe des abscisses, mais cela n'a pas l'air de correspondre ni aux versions ni à leurs dates de sortie.
      Du coup, une courbe polynomiale peut vite prendre la forme d'une exponentielle s'il l'ont étire le début et l'on rétrécit la fin.
      Pour moi, ce serait bien de répartir les versions proportionnellement à leurs dates de sortie. C'est à dire que l'on compare la taille du code par rapport au temps de développement.

      • [^] # Re: Taille du noyau

        Posté par (page perso) . Évalué à 2.

        mais cela n'a pas l'air de correspondre ni aux versions ni à leurs dates de sortie.

        Je vois peut-être mal, mais pour moi ça correspond bien à chaque version (chaque croix sur le graphique, il n'y a que les versions « ronde » qui sont notées sur l'axe). On peut aussi vouloir le montrer par rapport au temps de développement, mais ce n'est pas la même chose (et comme les sorties de version ne sont pas fixes dans le temps, je ne vois pas bien l'intérêt).

        « Rappelez-vous toujours que si la Gestapo avait les moyens de vous faire parler, les politiciens ont, eux, les moyens de vous faire taire. » Coluche

    • [^] # Re: Taille du noyau

      Posté par . Évalué à 0.

      Virer le code des drivers donneraient une image plus fidèle.

      "La première sécurité est la liberté"

      • [^] # Re: Taille du noyau

        Posté par (page perso) . Évalué à 2.

        Pourquoi?

        « Rappelez-vous toujours que si la Gestapo avait les moyens de vous faire parler, les politiciens ont, eux, les moyens de vous faire taire. » Coluche

        • [^] # Re: Taille du noyau

          Posté par . Évalué à 2.

          Parce que le nombre de drivers est plus en rapport avec le nombre de périphérique avec information disponible sur le marché et non par rapport à Linux lui-même.

          Les bugs difficile à comprendre se situe dans les zones systèmes (gestion, mémoire, processus) jamais dans les drivers. Les drivers ne sont souvent qu'une sorte de glue entre le hardware et un driver génériques de plus haut niveau (webcam<-> v4l, carte ethernet <-> réseau, ...).

          "La première sécurité est la liberté"

          • [^] # Re: Taille du noyau

            Posté par (page perso) . Évalué à 2.

            Mais ce n'est pas ce que veux montrer ce graphique.

            « Rappelez-vous toujours que si la Gestapo avait les moyens de vous faire parler, les politiciens ont, eux, les moyens de vous faire taire. » Coluche

  • # Pas fun

    Posté par (page perso) . Évalué à 8.

    Le problème avec les journaliste c'est qu'ils ne savent pas poser les questions fun... Si Linux devient trop complexe, fallait demander si finalement les microkernels n'étaient pas une bonne idée :3

  • # Intéressant...

    Posté par (page perso) . Évalué à 8.

    Je m'attendais à une interview plus dense. c'est vrai que nous sommes habitués aux articles et interviews de patrick_g et cela peut nous rendre exigeants !

    Zeit Online n'a pas la classe de Patrick, c'est tout !

    • [^] # Re: Intéressant...

      Posté par (page perso) . Évalué à 3.

      Je m'attendais à une interview plus dense.

      S'il fallait comparer „Die Zeit” à un journal français ce serait certainement «Le Monde» et, tout quotidien national confondu, je ne crois pas qu'on ait en France droit à des interviews aussi intéressantes, tout en restant dans le domaine de travail d'un quotidien national.

      • [^] # Re: Intéressant...

        Posté par . Évalué à 1.

        Nan, mais en Europe y'en a un meilleur (c'est assez subjectif), The Guardian, et je mettrais El Pais pas trop loin derrière non plus... Zeit a du boulot.

        "The trouble with quotes on the internet is that it’s difficult to discern whether or not they are genuine.” Abraham Lincoln

  • # Éditions des modérateurs

    Posté par (page perso) . Évalué à 10.

    Par rapport au texte que j'ai soumis, outre une meilleure présentation pour laquelle je ne peux que remercier les modérateurs, il y a quelques différences qui n'auraient pas dû être introduites en l'état car elles transforment le contenu du texte. J'ai obtenu le droit de présenter une traduction, mais pas de transformer le contnenu à ma guise.

    La première phrase de l'interview ne présente pas Linus Torvalds comme le créateur du noyau Linux, cœur du système d’exploitation libre GNU/Linux mais comme le créateur du système d'exploitation libre (l'article défini renvoie à Linux, utilisé dans le titre). Il faudrait revenir sur ce changement: si la confusion entre le système d'exploitation et son noyau entretenue par l'article est insupporable, les modérateurs peuvent insérer une «note des modérateurs» (entre crochets).

    Ensuite un intertitre a disparu, dont le contenu est «les gens ne s'intéressent pas pour les ordinateurs en tant que tels» et qui apparaissait après l'énumération des trois chemins.

    Pour respecter l'accord que m'ont très gentiment donné l'auteur de l'interview et le journal l'ayant publiée, il faudrait revenir sur ces deux modifications.

    Les modifications de présentation sont plutôt pas mal, et j'adresse mes remerciements au modérateur pour ce travail, cependant il reste quelques problèmes.

    1. Les espaces ajoutées avant les signes de ponctuations !? ne sont pas les bonnes: il faut mettre des espaces fines, c'est à dire U+202F NARROW NO-BREAK SPACE. Dans mon navigateur on ne fait aucune différence visuelle (l'espace a la même taille qu'une espace normale alors qu'elle devrait en faire le tiers) mais quitte à corriger autant que la correction rende le texte juste au lieu de transformer un texte faux en texte faux.

    2. Dans une énumération on introduit plutôt les éléments par un tiret cadratin que par une pastille à l'américaine.

    3. Dans une énumération, si les termes de l'énumération sont des phrases, on peut très bien les commencer par une majuscule et les finir par des points. Dans le cas particulier qui nous intéresse comme le deuxième et troisième terme de l'énumération sont formés de plusieurs phrases je trouve la solution pas de majsucule et fin par un point-virgule plutôt malheureuse.

    Pour ça mes références sont:

    1. http://unicode.org/udhr/n/notes_fra.html

    2. Jean-Pierre Lacroux, Orthotypographie. Orthographe & typographie française. Dictionnaire raisonné.

    3. Jacques André, Petites leçons de typographie, août 2008, 52 p.

    • [^] # Re: Éditions des modérateurs

      Posté par (page perso) . Évalué à 8.

      Les espaces ajoutées avant les signes de ponctuations !? ne sont pas les bonnes: il faut mettre des espaces fines, c'est à dire U+202F NARROW NO-BREAK SPACE. Dans mon navigateur on ne fait aucune différence visuelle (l'espace a la même taille qu'une espace normale alors qu'elle devrait en faire le tiers) mais quitte à corriger autant que la correction rende le texte juste au lieu de transformer un texte faux en texte faux.

      Les espaces fine insécable posent des problèmes d'affichage pour iOS, Android et Windows XP, ce qui fait que j'y suis plutôt opposé car cela rend la lecture sur ces plate-formes très difficile.

      Dans une énumération on introduit plutôt les éléments par un tiret cadratin — que par une pastille à l'américaine.

      C'est lié à la CSS, pas au texte.

      Dans une énumération, si les termes de l'énumération sont des phrases, on peut très bien les commencer par une majuscule et les finir par des points. Dans le cas particulier qui nous intéresse comme le deuxième et troisième terme de l'énumération sont formés de plusieurs phrases je trouve la solution pas de majsucule et fin par un point-virgule plutôt malheureuse.

      Enfin quelqu'un d'accord avec moi.

      « Rappelez-vous toujours que si la Gestapo avait les moyens de vous faire parler, les politiciens ont, eux, les moyens de vous faire taire. » Coluche

      • [^] # Re: Éditions des modérateurs

        Posté par (page perso) . Évalué à 2.

        Les espaces fine insécable posent des problèmes d'affichage pour iOS, Android et Windows XP, ce qui fait que j'y suis plutôt opposé car cela rend la lecture sur ces plate-formes très difficile.

        J'ignorais ces problèmes. Pour ma part je n'utilise jamais ces espaces directement car d'après moi ils devraient être insérés automatiquement par les logiciels.

        • [^] # Re: Éditions des modérateurs

          Posté par (page perso) . Évalué à 3.

          Le problème, c'est que l'insertion automatique est difficile à gérer. Par exemple, il ne faut pas s'occuper de ces espaces si on écrit du code dans la dépêche.

          « Rappelez-vous toujours que si la Gestapo avait les moyens de vous faire parler, les politiciens ont, eux, les moyens de vous faire taire. » Coluche

    • [^] # Re: Éditions des modérateurs

      Posté par (page perso) . Évalué à 2.

      J'ai pu profiter de mes nouveaux superpouvoirs pour les modifications du contenu. J'espère que c'est correct maintenant. Si ce n'est pas le cas, n'hésite pas à le dire. Pour les points-virgules de l'énumération, je n'ai rien fait sinon davy78 me tapera sur les doigts.

      « Rappelez-vous toujours que si la Gestapo avait les moyens de vous faire parler, les politiciens ont, eux, les moyens de vous faire taire. » Coluche

  • # linus sous debian !

    Posté par . Évalué à 1.

    bien que je puisse me diriger en fait vers Debian. Debian est la seule distribution que je n’ai jamais vraiment utilisée. On verra bien.

    Je suis sûr qu'il choisira la version debian kfreebsd ;-)

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.