# Pix/Introduction

À vos neurones, il est temps d'attaquer votre compréhension de l'informatique !
L'informatique est une science à part entière.
On y trouve, entre autres, les théories du développement logiciel, de la cryptographie, de la calculabilité, la description du fonctionnement d'un ordinateur, d'un système d'exploitation et des programmes qui y sont liés, et les protocoles associés à la mise en réseau de plusieurs machines. Mais cela fait beaucoup de vocabulaire, il serait bon d'éclaircir tout cela :

## Développement logiciel

    c’est l'art de construire des programmes, d'écrire des milliers de ligne de code qui décrivent le comportement d'un logiciel ;

## Cryptographie

    la science du message codé. Il est essentiel en informatique de savoir crypter des messages, afin de s'authentifier sur un réseau, protéger des mots de passe ou encore communiquer en privé ;

## Calculabilité

    savoir si un problème peut être résolu par un ordinateur, en effet ces derniers sont bons en mathématiques, mais il est prouvé qu’ils ne peuvent pas tout calculer, même avec une infinité de temps ;

## Système d'exploitation

    le gros logiciel de base d'un ordinateur. C'est lui qui s'occupe de démarrer, de faire tourner les programmes, d'accéder aux périphériques ou encore de se connecter au réseau. Un système d'exploitation ("operating system" en anglais) peut être Windows (celui-là même utilisé pour l'enseignement de Pix, car le plus répandu dans le grand public), GNU/Linux (un système libre, dont tout le monde a accès au code source, les lignes de code formant le système) ou encore Mac OS (prévu pour tourner sur les ordinateurs Apple) ;

## Programme

    un programme est un logiciel, une brique du système, qui en fait partie à la base ou a été installé après, il a une fonction bien précise (par exemple un navigateur Web (Mozilla Firefox, Google Chrome, Internet Explorer...), une suite bureautique (OpenOffice, Microsoft Office...), un éditeur de texte (Bloc-notes, Notepad++...), un programme de dessin ou de création d'images (Paint, GIMP, PhotoShop...), un jeu, et des milliers d'autres exemples) ;

## Protocole

    c’est la description d'un langage entre deux ordinateurs (à ne pas confondre avec un langage de programmation) ; il en existe plusieurs selon le type de communication souhaité (navigation sur des sites web, envoi d'un email, discussion instantanée...) ;

## Réseau

    un ensemble d'ordinateurs qui communiquent entre eux, ces ordinateurs pouvant être des PCs de bureau, des serveurs (ordinateurs connectés sur un réseau et répondant à des requêtes, ce sont eux qui stockent par exemple les sites web et délivrent les pages demandées par un navigateur), des téléphones portables, des ordinateurs embarqués (dans un avion par exemple), etc.
C'est la complexité de tous ces systèmes qui justifie la diversité des logiciels, des formats de fichiers, des méthodes de communication, et cela légitime Pix, qui clarifie les esprits perdus dans ce dédale informatique !
Voici une carte mère, à la base de l'unité centrale (tirée des cours c2i de l'UJF) :
Mais revenons à nos moutons, et continuons par cette analogie entre un ordinateur et un être humain :
* Le processeur est l'unité de calcul de l'ordinateur, il peut être apparenté à un cerveau : il effectue les calculs de base demandés par les programmes.
* La mémoire : on en distingue deux principales : la mémoire vive (RAM, pour "random access memory"), qui sert à stocker les programmes en mémoire, c’est le système d'exploitation qui l'utilise. La RAM est effacée à l'extinction de l'ordinateur, lorsqu'elle n'est plus alimentée en électricité. Cette mémoire a des temps de lecture et d'écriture très élevés. À l'inverse, l'information contenue sur les disques durs n’est pas volatile, cette mémoire est faite pour le stockage : on y trouve par exemple les programmes et les fichiers utilisateurs.
* L'écran et la webcam : ils sont respectivement un périphérique de sortie et d'entrée vidéo ; ils peuvent être comparés aux yeux.
* Les enceintes et le micro : de même, sortie et entrée audio ; ce sont les oreilles d'un ordinateur.
* Les périphériques réseau : analogues aux méthodes de communication humaines telles que le langage avec ses semblables !
* Lecteur CD, lecteur disquette, ports USB : le 6e sens de l'ordinateur, que nous autres pauvres humains ne possédons pas.
Il faut bien distinguer les périphériques d'entrée (utilisés pour la communication des humains vers les ordinateurs, par exemple un clavier, une souris, une webcam...) des périphériques de sortie (utilisés dans l'autre sens, des ordinateurs vers les humains, par exemple un écran, une imprimante, des enceintes...). Il existe également des périphériques mixtes, dits d'entrée-sortie, tel un écran tactile (écran : sortie ; tactile : entrée). Enfin, il faut distinguer les périphériques vidéo (écran, imprimante, scanner...), les périphériques audio (micro, enceintes...), les périphériques tactiles (souris, clavier...), et ceux utilisés pour la communication entre ordinateurs (disquette, clé USB, CD, modem...).
Voilà, si vous lisez ce document sur un ordinateur, vous avez en face de vous la représentation électronique d'un être humain. Vous êtes apte à communiquer avec votre ordinateur, à échanger des informations (telles que des fichiers), à écouter de la musique ou streamer votre chat ivre mort sur le web.
La meilleure des défenses, c’est l'attaque ; et la meilleure façon d'appréhender la partie théorique de Pix, c’est de pratiquer (joke inside). Il est l’heure de s'approprier son environnement de travail !
Je vais considérer par la suite que vous utilisez le système d'exploitation Windows, car c’est celui utilisé dans la formation Pix. Si vous n'avez pas les moyens/l'envie de travailler sous Windows, sachez que la plupart des manipulations que nous allons effectuer sont faisables avec un système GNU/Linux ou MacOS. Les environnements de bureau étant différents, c’est seulement l'interface d'accès aux logiciels qui varie.
* Quelques programmes indispensables