Twitter YouTube SoundCloud LinkedIn

Tiennot blog

Accueil

... 4 5 6 7 8 9 10 ...
0

Canonical, futur Apple du logiciel libre ?

Samedi 30 juillet 2011, 16:01 (par guilhem)

À la sortie de la dernière version d'Ubuntu (11.04 Natty), j'avais été pour le moins surpris par les nouveautés apportées par Canonical à l'interface utilisateur. N'ayant pas eu le temps de tester et commenter ces changements, je vous donne aujourd'hui mon point de vue sur l'évolution d'Ubuntu, ainsi que quelques explications quant à la direction prise par Canonical.

image : /images/blog/ubuntu_natty_0001.png

Unity, le nouveau bureau d'Ubuntu

La nouvelle a fait beaucoup de bruit dans la communauté : à partir de Natty, Ubuntu proposera désormais par défaut son nouveau bureau, Unity. Celui-ci peut s'apparenter à un fork de Gnome, puisqu'à l'heure actuelle, il est encore à 90% basé sur ce dernier. Les principales nouveautés apportées pour le moment sont l'intégration du menu principal des fenêtres dans le tableau de bord supérieur (comme sur Mac OS), et surtout, la disparition du tableau de bord inférieur, au profit d'une barre latérale sur le côté gauche de l'écran. Cette barre n'est pas sans rappeler le menu principal de nombreux smartphones, à l'exception qu'ici, les icônes sont disposées en colonne exclusivement.

image : /images/blog/ubuntu_natty_0002.png

À première vue, je trouve l'ensemble plutôt esthétique. La barre d'icônes est fluide et permet d'ouvrir en un clin d'œil ses applications favorites. Et en bas de la barre, on retrouve trois icônes permettant d'afficher un menu thématique des applications, de changer de bureau, et d'accéder à ses répertoires. En outre, cette barre a le bon goût de disparaître lorsqu'on maximise une fenêtre, réapparaissant alors lorsqu'on approche la souris du bord de l'écran.

Cependant, quelques petits détails m'empêchent d'apprécier pleinement cette nouveauté :

- les icônes de changement de bureau / menu principal / accès aux répertoires auraient gagné à être placées en haut (pas pratique de descendre à chaque fois pour aller les chercher)
- le défilement de la barre, très intuitif sur les écrans tactiles des tablettes, est vite pénible sur un ordinateur plus classique
- impossible de lancer deux fois un même programme, même en faisant un clic droit (le menu de l'icône ne permet pas cette option)
- le sélecteur d'espace de travail est peu pratique, car trop petit

image : /images/blog/ubuntu_natty_0003.png
Pas d'option pour lancer plusieurs fois un même logiciel...

Et quelques bugs viennent gâter l'impression générale, comme la barre de recherche qui se gèle, ou des problèmes en tentant de gérer plusieurs instances d'un même logiciel ouvertes en même temps.

Autre motif de récrimination, les barres de défilement. Celles-ci n'apparaissent qu'au passage de la souris, affichant une sorte de curseur stylisé (difficile à décrire, l'image est plus parlante). S'il est certain qu'on gagne (un peu) de place, le défilement est peu aisé, surtout que le curseur bogue, et disparaît parfois lorsqu'on clique dessus. Il faut alors s'y reprendre à plusieurs fois.

image : /images/blog/ubuntu_natty_0004.png

En définitive, Unity ne m'a pas vraiment séduit. Il me semble trop optimisé pour les tablettes, et je préfère rester sur une interface plus classique.

Canonical, des choix discutables...

Tous les changements évoqués plus haut ne sont en fait que le début d'un changement de politique de la part de Canonical. C'est la dernière Ubuntu Party à Paris les 27, 28 et 29 mai qui m'a un peu éclairé. Là-bas, j'ai assisté à une conférence expliquant les nouveaux objectifs de Canonical. Et le présentateur n'y est pas allé par quatre chemins.

Graphiques à l'appui, il nous a été expliqué que le nombre d'utilisateurs d'Ubuntu stagne aujourd'hui à environ 3-4 millions dans le monde. D'ici dix ans, Canonical voudrait en séduire 10 millions. Et pour ce faire, ils comptent clairement tout mettre en œuvre pour rendre Ubuntu plus accessible. Mais comme tout est affaire de compromis, Canonical sait bien que bon nombre des utilisateurs actuels vont être déçus par ces nouveaux choix. Et la société est prête à ce petit « sacrifice » pour apporter GNU/Linux dans les foyers.

Ubuntu Center Software, barre de menu intégrée au tableau de bord, barre d'icônes défilante et icônes à gauche dans les fenêtres : tout ceci me rappelle Mac OS, et son AppleStore. Déjà aujourd'hui, une certaine déception commence à se faire sentir parmi les utilisateurs actuels. Il n'y a qu'à voir le fil de discussion Unity bientôt obligatoire: quelle autre distribution choisir? sur le forum Ubuntu-fr pour s'en rendre compte : 2008 réponses, et 60934 vues. Les Ubunteros semblent déçus, et cherchent d'autres distributions.

Au final, on peut se poser des questions sur les prises de position de Canonical : Ubuntu ne risque-t-il pas de trop s'éloigner de la philosophie du libre ? J'ai bien peur qu'à trop vouloir répandre la bonne parole, Canonical ne finisse par la déformer.

0

Renouveau

Jeudi 28 juillet 2011, 16:19 (par guilhem)

Je suis aujourd'hui fier de vous annoncer la sortie de la version 3.0 de mon site web. Plus qu'une nouvelle version, il s'agit d'une refonte totale. L'ensemble du code a été réécrit, de façon à être mieux optimisé, plus rapide et plus léger. J'ai également pris la décision de louer un nom de domaine et de changer d'hébergeur. Ainsi, l'ancienne adresse (guilhem.toile-libre.org) n'est plus valide et redirige ici. Je vous invite donc à mettre à jour vos liens et favoris.

Nouvelles technologies

Cette nouvelle version fut l'occasion d'intégrer de nouveaux outils technologiques au site. Ainsi, quelques parties du site ne sont pas faites maison, mais reposent sur des bibliothèques tierces, comme jQuery pour javascript et Smarty pour le moteur de templates.

De plus, j'ai souhaité faire usage des standards web émergents, tels que HTML5 et CSS3. Vous pouvez le constater en examinant les feuilles de style CSS, ce site utilise massivement les nouvelles propriétés CSS, telles que border-radius par exemple.

Compatibilité

Bien évidemment, l'usage de telles technologies se fait au détriment des navigateurs les plus anciens. Voici à titre indicatif une liste des versions les plus anciennes compatibles, par navigateur :

- Internet Explorer : 8.0
- Firefox : 3.5
- Chrome : 2
- Opera : 10.50
- Safari : 3.1

Ces versions ne donnent qu'un affichage correct. Pour un rendu parfait, il est préférable d'utiliser la dernière version disponible. En outre, je ne garantis rien pour des versions inférieures à celles proposées ci-dessus. En particulier, Internet Explorer version 7.0 et inférieurs ne sont plus supportés.

Mises à jour

Ayant enfin un peu de temps libre, je vais pouvoir m'occuper de mettre à jour plus souvent ce site. Ainsi, les billets seront plus nombreux à l'avenir, et la réécriture de certains tutoriels est également au programme.

0

Culture informatique (épisode 2) : le Motorola 68000

Samedi 25 juin 2011, 0:04 (par guilhem)

Depuis l'apparition du tout premier microprocesseur, l'Intel 4004 en 1971, ses successeurs n'ont cessé de gagner en puissance de calcul. Nous allons nous intéresser à un microprocesseur apparu environ 8 ans plus tard, le 68000 de Motorola, dont les dérivés restent encore abondamment utilisés dans l'électronique embarquée d'aujourd'hui.

Apparu 8 ans après le tout premier microprocesseur (donc en 1979), le Motorola 68000 fonctionnait à une fréquence de 10 MHz, et comptait un peu plus de 68000 transistors (cette caractéristique étant à l'origine de son nom), là où l'Intel 4004 n'incorporait que 2300 transistors pour une fréquence de 740 kHz.

Caractéristiques techniques

Le 68000 compte 8 registres de données d0-d7, et 7 registres d'adresses a0-a6, avec en plus le registre a7 faisant office de pointeur de pile. Tous ces registres sont d'une taille de 32 bits. Cependant, le bus externe du microprocesseur étant de 16 bits, on qualifie souvent le 68000 de 16/32 bits.

image : /images/blog/motorola_68000_0001.png
Motorola 68030 sur un Apple Macintosh IIci de 1991

Il est possible de distinguer deux modes d'exécution du 68000 : le mode superviseur et le mode utilisateur. Le premier autorise un accès total aux fonctionnalités du microprocesseur, notamment au contrôle des interruptions et au mode de débogage (bit trace du registre d'état SR), tandis que le second ne peut faire usage que des fonctionnalités de calcul classique. Notons aussi qu'en mode utilisateur, on n'a accès qu'à l'octet de poids faible du registre d'état SR (alors nommé CCR), l'octet de poids fort étant réservé au contrôle des fonctionnalités avancées présentées précédemment.

Le Motorola 68000 est un processeur de type CISC (Complex Instruction Set Computer). Cela signifie que son jeu d'instructions est étendu, et que chacune d'entre elle prend un temps variable pour s'exécuter. En particulier, les opérations sur 32 bits sont plus longues, car l'unité de calcul ne prend en charge que des nombres sur 16 bits.

Utilisation

Le Motorola 68000 et ses successeurs ont été abondamment employés dans les ordinateurs serveurs et personnels au cours des années 80. Il s'est notamment illustré dans les Macintosh II d'Apple (il s'agissait de Motorola 68020 et 68030). Aujourd'hui, la famille des m68k connaît encore un certain succès dans le matériel embarqué. On les retrouve ainsi dans les domaines suivants (liste non exhaustive) :

- aéronautique : dans certains systèmes de commande des Airbus
- ferroviaire : dans les calculateurs embarqués du KVB de la SNCF (contrôle de la vitesse à bord des trains)
- scolaire : dans les calculatrices programmables de chez Texas Instrument (TI-89 et TI-92)

image : /images/blog/motorola_68000_0002.png
Une calculatrice TI-89 avec un Motorola 68000

Ce succès s'explique par la grande simplicité du jeu d'instruction des m68k au regard des processeurs x86 aujourd'hui, ce qui leur apporte un atout important en terme de consommation électrique. De plus, la famille existant depuis maintenant plus de 30 ans, l'architecture est stable et exempte de bogues, ce qui est indispensable vu la criticité de certains domaines d'application.

0

Culture informatique (épisode 1) : c'est quoi, un bug ?

Lundi 16 mai 2011, 22:17 (par guilhem)

Le terme « bug » peut être traduit en français par le mot « insecte » . Selon la légende, l'emploi de ce mot pour désigner un dysfonctionnement dans un programme informatique remonte au 9 septembre 1945. Ce jour là, un informaticien du nom de Grace Hopper aurait retiré un petit insecte coincé dans un contact de relais du premier ordinateur au monde, le Harvard Mark II. Il aurait alors relevé l'incident dans un de ses carnets de note, et depuis, l'emploi du mot « bug » est resté. Cependant, bien que cette note existe bel et bien, il semble que l'usage du mot soit antérieur à l'apparition des ordinateurs, le terme étant alors employé dans le cadre des machines de précision.

image : /images/blog/relais.jpg
Relais (collection personnelle)

Le mot anglais est aujourd'hui passé dans le langage courant, à tel point que peu de gens savent qu'il existe un équivalent en français : « bogue » (au masculin). Ainsi, on ne parle pas de « débugger » un programme, mais bien de « déboguer » un programme.

En cas de bogue, le comportement du programme impacté devient pour le moins erratique, et dépendant du système d'exploitation. Voyons cela avec un exemple simple :


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

int main(int argc, char *argv[])
{
  int *i = NULL;

  printf("Programme générant un bogue\n");
  *i = 10; // Ligne qui provoque le bogue

  return 0;
}

Le code ci-dessus affiche simplement une phrase à l'écran, avant de tenter un accès à une zone mémoire à laquelle il n'a pas le droit d'accéder (en l'occurrence, l'adresse 0x0).

Sous Windows, vous obtenez le message (pas très instructif) suivant :

image : /images/blog/bogue_win.png

Tandis que sous Linux, le terminal vous renvoie ceci (remarquez, on n'est pas tellement plus avancé) :

image : /images/blog/bogue_linux.png

Dans tous les cas, le bogue conduit à la terminaison brutale du programme. On le remarque aisément, les messages d'erreurs renvoyés par le système d'exploitation ne sont pas très explicites, et bien souvent, l'aide d'un programme spécialement conçu pour traquer les bogues (le « débogueur ») se révèle indispensable. Toutefois, on peut faire ici une liste succincte des principales sources de bogues dans les programmes :

- accès en lecture/écriture à une zone mémoire à laquelle le programme n'a pas accès (c'est le cas de notre exemple, il tente un accès en écriture)
- allocation/libération de mémoire : en particulier si le programmeur tente de libérer un bloc mémoire qui l'a déjà été
- dépassement de capacité : si le programme « déborde » d'une zone mémoire
- boucle infinie : le programme boucle indéfiniment (exemple : boucle « while »)

Et j'en passe... Le plus souvent, il s'agit donc d'une erreur humaine, d'un oubli.

Maintenant, vous vous demandez sûrement : que faire lorsque je constate un bogue dans un logiciel ? Si vous êtes développeur, le mieux est de faire un « rapport de bogue » décrivant le plus précisément possible les conditions d'apparition et les symptômes du problème aux développeurs du logiciel (il faut regarder dans la documentation du logiciel pour voir comment faire). Et même, pourquoi pas tenter de le corriger, si le logiciel est libre ou open source ?

En revanche, si vous ne vous sentez pas une âme de développeur, difficile de faire mieux qu'écumer les forums ou autres sites web à la recherche d'une solution provisoire. Et quand bien même vous ne trouveriez pas de solution, souvenez-vous : « it's not a bug, it's a feature ! » (« ce n'est pas un bogue, c'est une fonctionnalité ») :D

1

Important : problèmes avec Proctuner 2.0.1 sous Windows 7

Mardi 19 avril 2011, 15:08 (par guilhem)

Il s'est avéré que ce problème est spécifique aux processeurs Intel dérivés de la famille des Core 2 (notamment les Celeron). Il est recommandé aux possesseurs de tels processeurs de ne pas exécuter le programme en mode administrateur. Pour les autres, pas de précautions particulières. Il n'est pas possible pour le moment d'annoncer une date de résolution du problème.

Il s'est avéré, en faisant des tests aujourd'hui de la version 2.0.1 de Proctuner sous Windows 7, que le démarrage du programme échouait systématiquement, entraînant l'apparition d'un écran bleu.

image : /images/blog/bsod.jpg

Le responsable est le driver MSR_driver.sys, qui est néanmoins indispensable au fonctionnement du programme. Cependant, le problème n'apparaît pas forcément : il n'a pas été possible de le reproduire dans une machine virtuelle pourtant équipée de la même version de Windows. Le débogage va donc s'avérer difficile.

En attendant, si vous arrivez à reproduire cette situation chez vous, je vous invite à poster un message dans ce sujet indiquant simplement :
- la version de Windows utilisée ;
- le type de processeur ;
- l'architecture matérielle (32 ou 64 bits) ;
- et toute autre information qu'il vous semble pertinent de signaler.

... 4 5 6 7 8 9 10 ...