Module : Initiation à la programmation. xavier.giraud@univ-amu.fr



Documents pareils
Programmation C. Apprendre à développer des programmes simples dans le langage C

La mémoire. Un ordinateur. L'octet. Le bit

Unix/Linux I. 1 ere année DUT. Université marne la vallée

TD séances n 3 et n 4 Répertoires et Fichiers sous Unix

TP1 : Initiation à l algorithmique (1 séance)

Cours 3 : L'ordinateur

Introduction à Linux (pour le HPC) «Linux 101» Présentation :

Module : Informatique Générale 1. Les commandes MS-DOS

Informatique UE 102. Jean-Yves Antoine. Architecture des ordinateurs et Algorithmique de base. UFR Sciences et Techniques Licence S&T 1ère année

TP1 - Prise en main de l environnement Unix.

L informatique en BCPST

Permis de conduire info

Structure et fonctionnement d'un ordinateur : hardware

(Langage de commandes) Les commandes sont données par l'utilisateur grâce au clavier, à partir d'une "invite" ou "prompt" (par exemple "c:\>" )

Éléments d'architecture des ordinateurs


C.M. 1 & 2 : Prise en main de Linux

Généralités sur les systèmes d Exploitation

THEME 1 : L ORDINATEUR ET SON ENVIRONNEMENT. Objectifs

TP 1 Prise en main de l environnement Unix

PRESENTATION RESSOURCES. Christian Dupaty BTS Systèmes Numériques Lycée Fourcade Gardanne Académie d Aix Marseille

Généralités sur les systèmes d Exploitation

Outils pour la pratique

Chimie et physique informatiques

Introduction à l informatique en BCPST

Aide-Mémoire unix. 9 février 2009

HISTORIQUE DES SYSTEMES D'EXPLOITATION (S.E.)

Cours Informatique 1. Monsieur SADOUNI Salheddine

La communication et la gestion de l'information

Certificat Informatique et internet Niveau 1 TD D1. Domaine 1 : Travailler dans un environnement numérique évolutif. 1. Généralités : Filière

Ordinateur Logiciel Mémoire. Entrées/sorties Périphériques. Suite d'instructions permettant de réaliser une ou plusieurs tâche(s), de résoudre un

GESTION DE L'ORDINATEUR

Base de l'informatique. Généralité et Architecture Le système d'exploitation Les logiciels Le réseau et l'extérieur (WEB)

CH.3 SYSTÈMES D'EXPLOITATION

Informatique I. Sciences et Technologies du Vivant (Semestre 1)

I.1- DÉFINITIONS ET NOTIONS DE BASE

Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application

Présentation. Référenciel : textes officiels

FreeNAS Shere. Par THOREZ Nicolas

Atelier individuel. Linux 101. Frédérick Lefebvre & Maxime Boissonneault frederick.lefebvre@calculquebec.ca U. Laval - Janv. 2014

Introduction au Système d Exploitation Unix/Linux

Introduction...3. Objectif...3. Manipulations...3. La Sauvegarde...4. Les différents types...4. Planification...4. Les outils...5

LE MICRO ORDINATEUR. Introduction Architecture Les supports amovibles Les composants Le système d exploitation Les portables

Matériel & Logiciels (Hardware & Software)

Modules du DUT Informatique proposés pour des DCCE en 2014/2015

USTL - Licence ST-A 1ère année Initiation à la programmation TP 1

TIC. Tout d abord. Objectifs. L information et l ordinateur. TC IUT Montpellier

PPe jaune. Domingues Almeida Nicolas Collin Leo Ferdioui Lamia Sannier Vincent [PPE PROJET FTP]

MODULE I1. Plan. Introduction. Introduction. Historique. Historique avant R&T 1ère année. Sylvain MERCHEZ

Introduction aux Systèmes et aux Réseaux, Master 2 CCI

Architecture des ordinateurs Introduction à l informatique

D1- L'environnement de travail

TP 4 de familiarisation avec Unix

Chapitre 2 Accès aux partages depuis votre système d'exploitation

INTRODUCTION À L INFORMATIQUE

Projet Administration Réseaux

CQP 112 Introduc/on à la programma/on. Thème 2 : Architecture d un système informa/que. Département d informa/que

I. QU'EST-CE QU'UN ORDINATEUR? Un ordinateur est relié à plein de périphériques

Séance 0 : Linux + Octave : le compromis idéal

Comment configurer Kubuntu

Procédure de restauration F8. Série LoRdi 2012 à Dell V131 V3360 L3330

Commandes Linux. Gestion des fichiers et des répertoires. Gestion des droits. Gestion des imprimantes. Formation Use-IT

Introduction à l Informatique licence 1 ère année Notes de Cours

«Astrophysique et instrumentations associées» Cours UNIX Benoît Semelin

Leçon 1 : Les principaux composants d un ordinateur

Tutoriel Création d une source Cydia et compilation des packages sous Linux

Service Informatique et Télématique (SITEL), Emile-Argand 11, 2009 Neuchâtel, Tél ,

Partie 1. Professeur : Haouati Abdelali. CPGE Lycée Omar Ibn Lkhattab - Meknès haouaticpge@gmail.com

Systèmes d exploitation

CARPE. Documentation Informatique S E T R A. Version Août CARPE (Documentation Informatique) 1

Affectation standard Affectation modifiée (exemple)

ACTIVITÉ DE PROGRAMMATION

Espace de travail collaboratif

TAI049 Utiliser la virtualisation en assistance et en dépannage informatique TABLE DES MATIERES

Les Boitiers de Vote Electroniques (Clickers)

Le service FTP. M.BOUABID, Page 1 sur 5

Alchin Couderc Flambard TBSEID 2

Bon ben voilà c est fait!

Découverte des Logiciels Libres. Gilles Dequen

4. Utilisation d un SGBD : le langage SQL. 5. Normalisation

Serveur de sauvegarde à moindre coût

FICHE PEDAGOGIQUE. Questions à poser. - Avant de démarrer l ordinateur,

Sur un ordinateur portable ou un All-in-One tactile, la plupart des éléments mentionnés précédemment sont regroupés. 10) 11)

Environnement Informatique EMSE Linux

Introduction à l informatique

Premiers pas en Linux

Linux et le Shell. Francois BAYART. Atelier du samedi 20 Novembre

l'ordinateur les bases

TRAVAUX DIRIGES D'INFORMATIQUE INITIATION A LA MANIPULATION DE WINDOWS 98

ARCHITECTURE ET SYSTÈMES D'EXPLOITATIONS

Cyber-base du Pays Martégal. Atelier «Découverte de l ordinateur»

Annexe : La Programmation Informatique

Tsoft et Groupe Eyrolles, 2005, ISBN :

USTL - Licence ST-A 1ère année Codage de l information TP 1 :

Architecture matérielle des systèmes informatiques

Installation de Windows 2000 Serveur

Programmation Internet Cours 4

Installation de Windows Vista

OpenMediaVault installation

Serveur d application WebDev

Transcription:

Module : Initiation à la programmation xavier.giraud@univ-amu.fr. Objectif : Savoir programmer : concevoir, écrire et exécuter des programmes - simples mais complets - en langage Fortran > la Programmation implique : la logique, l'algorithmique, l'informatique (une connaissance de...) d'une manière générale les mathématiques,... Mais aussi : la grammaire, l'histoire, l'éthique, l'esthétique,...

Module : Initiation à la programmation 1. L'informatique Informatique : «La science du traitement rationnel de l information considérée comme le support des connaissances dans les domaines scientifiques, économiques et sociaux, notamment à l aide de machines automatiques.» Ordinateur : «Machine électronique pouvant être programmée pour traiter de l'information.» 1- Qu'est-ce que l'information? 2- Qu'est-ce que le traitement de l'information? 3- Qu'est-ce que la programmation?

1- Qu'est-ce que l'information? Exemple de la communication dans une ruche... Information : «Signal, fait ou ensemble de faits, qui apporte de la connaissance sur votre environnement, qui réduit l'incertitude.» Attention : information support de l information

2- Qu'est-ce que le traitement de l'information? Trois étapes : (1) Processus d'abstraction : simplification du monde abstraction Monde réel --------------------------------> Représentation du monde Exemple d'un schéma d'écosystème, où l'on retient les éléments "pertinents" uniquement. (2) Transformation de cette information et intégration aux représentations antérieures du monde. En informatique : le calcul... (3) La projection : données traitées nouvelles informations sur le monde étudié

3- Qu'est-ce que la programmation? Programmation : «Suite d'ordres pour traiter (plus tard) un problème générique.» Programmer : «Faire mémoriser une suite d ordres à exécuter plus tard.» - Conception et analyses de méthodes. - Mise au point d algorithmes. La programmation les rend opérationnels. Deux étapes d'usage : 1. Programmation (programme = suite d instructions) : programmeur 2. Exécution du programme par un utilisateur > cette distinction possible dans le temps et dans l'espace implique des précautions de conception.

Module : Initiation à la programmation 2. (Très bref) historique Pour garder en mémoire quelques concepts clés... et pour vous faciliter la tâche en tant que programmeurs et programmeuses.

Les ordinateurs : bref historique (1) Machines à calculer et automates 1642 : Blaise Pascal met au point sa "Pascaline" > elle traite uniquement l'addition 1673 : Leibnitz conçoit une machine capable d'exécuter les quatre opérations élémentaires Puis viendront l'ajout de claviers pour la saisie des nombres, et de systèmes d'impression papier pour les résultats... Mais est-ce que cela correspond à notre définition de l'ordinateur?

Les ordinateurs : bref historique (1) Machines à calculer et automates 1642 : Blaise Pascal met au point sa "Pascaline"

http://www.chateau-boutheon.com/- Metiers-a-tisser-Jacquard-.html Les ordinateurs : bref historique (2) La naissance des programmes 1804 : Premier métier à tisser entièrement automatique par Joseph-Marie Jacquard > commandé par un système de cartes perforées 1830 : Babage invente la "Machine analytique" > exécute des séquences d'opérations enchaînées Babage énonce le premier ce que doivent être les parties essentielles d'un ordinateur : une unité de calcul, de la mémoire et des organes d'entrée et de sortie. Naissance de la programmation avec un jeu d'instructions. Mais toute décision dépendant du résultat d'un calcul doit être réalisée par l'homme.

Les ordinateurs : bref historique (3) L'électronique arrive, première génération 1945 : Construction de l'eniac > 30 tonnes, 72m2 au sol stock 20 nombres et réalise 300 multiplications par seconde > Première machine pouvant réaliser des branchements conditionnels Calcul et programmation se font à l'aide de code binaire : 0 ou 1 C'est le "langage machine" Facilitation de ce travail : Ecriture en "langage d'assemblage", compréhensible par des humains puis transformé en code binaire par un programme, "l'assembleur"

Architecture de von Neumann Ex d instruction : «Ajoute le contenu de la case mémoire n o 1465 à celui de la case 45877 et stocke le résultat dans la case 2165» «00111010 10001101 01100110» langage assembleur

Les ordinateurs : bref historique (4) Les transistors et les langages de haut niveau : deuxième génération 1958 : Les transistors remplacent les tubes à vide > plus petits, plus économe en énergie > Mémoire en deux parties : - disques et bande pour stockage long terme - mémoire électronique pour le calcul La programmation utilise un langage plus accessible et surtout qui peut comprendre plusieurs instructions C'est le "langage de haut niveau" Facilitation de ce travail : Nécessité d'un compilateur "compilateur"

Les ordinateurs : bref historique (5) Circuits intégrés et systèmes d'exploitation : troisième génération 1960' : Plusieurs centaines de transistors sur un circuit intégré > plus petits, plus rapides, plus efficaces > Le système d'exploitation : - interaction homme-machine, interprète et exécute les commandes permettant de charger, utiliser, effacer des programmes et des données - gestion de plusieurs programmes simultanés

Les ordinateurs : bref historique (6) Programmation structurée et micro-processeurs : quatrième génération 1970' : Programmation structurée, par blocks d'instructions > PASCAL, C, ADA 1971 : Apparition du micro-processeur > miniaturisation et utilisation grand publique 1981 : Premier PC d'ibm 1984 : Premier Macintosh > Interface graphique pour le système d'exploitation

Les parties constituent un tout... Module : Initiation à la programmation 3. Le système

Equipement informatique - Les périphériques etc... entrée/sortie : clavier, souris, écran(s), disques externes, mais aussi tout type d'appareillage scientifique : sonde, capteurs, - L'unité centrale - la carte mère - contient le processeur et une partie de la mémoire - le processeur - la mémoire RAM - le disque dur - les cartes d'extension (carte graphique, carte son,...) - Le système d'exploitation (OS : Operating System) - Le BIOS (Basic Input/Output System)

Communication entre ordinateurs - Les réseaux - Internet : la toile! qui possède tout de même quelques verrous! - Le web : www : World Wide Web pages écrites dans divers langages (html, php,...) programme : le navigateur (Firefox, Explorer, Opéra,...) - La messagerie - Transferts de fichiers exemple : ftp (file transfert protocole), ssh, scp (sécurisé),...

Les données Elles sont tellement précieuses quand on les a perdues. Pensez à sauvegarder vos données sur des supports multiples (disque, clé USB, Cloud,...) - les fichiers (texte, image, son, tableur,...).jpg.gif.ppt.pdf.wav.doc.odt.txt.dat.mp3. F.for.f77.f90.exe et quelques fichiers systèmes, dont certains sont "cachés"

Le système d'exploitation (Windows, Mac,...) - Unix et/ou Linux Un logiciel libre, selon la définition de la Free Software Foundation, garantit aux utilisateurs 4 libertés fondamentales : Liberté 0 : la liberté d exécuter le programme, pour tous les usages Liberté 1 : la liberté d étudier le fonctionnement du programme (le code source doit être accessible) Liberté 2 : la liberté de redistribuer des copies (y compris éventuellement en les vendant) Liberté 3 : la liberté d améliorer le programme et de publier ses améliorations (le code source doit être accessible) Un logiciel qui ne garantit pas ces 4 libertés est dit propriétaire. Attention, libre n est pas synonyme de gratuit De multiples interfaces graphiques pour Linux : Gnome, Redhat, KDE,...

3. Le système, ou organisation " C'est par organisation que le tout est quelque chose de plus que la somme des parties ; ou dit autrement, qu'un tout organisé (système) produit, favorise l'apparition d'un certain nombre de qualités nouvelles absentes des parties séparées : les émergences. " (Edgard Morin)

Module : Initiation à la programmation 4. Réflexions sur la complexité Omniprésence de l'informatique ( et de la programmation ) Aujourd'hui, l'informatique et la programmation sont quasiment partout... (notamment en science) > la Programmation implique : la logique, l'algorithmique, l'informatique (d'une manière générale) les mathématiques,... > Il ne faut pas en dissocier les "humanités" Art, littérature, philosophie,...

TD... à vos machines! Module : Initiation à la programmation Fonctionnement des séances à venir... 5. Commandes Linux 1 h de cours : introduction de nouvelles notions 3 h de TD : mise en pratique sur des exercices.

Arborescence - la racine : / (slash) - les répertoires (directory en anglais) - fichiers et répertoires peuvent être mélangés (au même niveau d'arborescence) - distinction unique par le "nom complet" ou "chemin" (path)

Arborescence Les deux fichiers sont distincts, leurs chemins (absolus), leur adresses, sont différentes : /home1/x256987/photos_vacances/photo1.jpg /home1/x256987/photos_vacances/corse/photo1.jpg

Arborescence - home directory : répertoire personnel, propre à chaque utilisateur /home/users/ahmed /home/users/virginie ou bien le symbole "~" les deux chemins suivants sont identiques : ~/Docs_admin /home1/x256987/doc_admin - répertoire courant, symbole : "." - répertoire parent, symbole : ".."

Arborescence chemin absolu et chemin relatif /home1/x256987/doc_admin/cv/cv_fr_stage.tex Si vous êtes dans Photos_vacances, le chemin relatif est :../Docs_admin/CV/cv_fr_stage.tex

Droits d'accès - droit de lire (read, r) 0 ou 1 - droit d'écrire (write, w) 0 ou 1 - droit d'exécuter (execute, x) 0 ou 1 r w x 1 1 1 : j'ai tous les droits octal : 7 1 0 0 : seulement le droit de lire octal : 4 Ces droits (rwx) sont définis pour - l'utilisateur lui même - le groupe auquel appartient l'utilisateur - le reste du monde Un fichier peut donc avoir les droits suivants : octal : 7 4 0 rwx r - - - - - 111 100 000 tous les droits pour l'utilisateur lecture seule pour les membres du même groupe aucun accès possible pour les autres

Les commandes usuelles (au terminal) Les commandes sont à taper à la suite du prompt ou de l'invite de commande : identifiant@nom_serveur : ~$ et sont toujours de la forme : $ <commande> [-options] <argument1> [argument2] [...] Attention à la gestion des espaces! pwd (path to working directory) ls [-options] (list) ls -l : donne les détails des droits d'accès ls -a : affiche aussi les fichiers cachés (qui commencent par un point, par ex :.bashrc cd <chemin_vers_repertoire> (change directory) utilise un chemin absolu ou relatif! cd /home1/toto/rep2 cd../rep2 cd (sans argument) cette commande renvoie directement au home directory ~

Les commandes usuelles (au terminal) Commandes de gestion de fichiers cp <fichier_source> <fichier_cible> cp <fichier_source> <repertoire_cible> (copy) exemples : cp /home1/toto/img145.jpg /home1/toto/photos/italie1.jpg cp../fichier1.txt. mv <fichier_source> <fichier_cible> mv <fichier_source> <repertoire_cible> (move) permet de déplacer ou de renommer rm <fichier> (remove)

Les commandes usuelles (au terminal) Commandes de gestion de répertoires mkdir <repertoire> (make directory) mkdir NomNouveauRepertoire rmdir <repertoire> (remove directory) uniquement pour un répertoire vide

Les commandes usuelles (au terminal) Commandes de gestion de fichiers more <fichier> cat <fichier> (permet d'afficher le contenu du fichier page par page) (permet d'afficher le contenu du fichier en une seule fois) find. -name <texte> -print (trouve un fichier dont le nom contient <texte>)

Les commandes usuelles (au terminal) Commandes de gestion de fichiers more <fichier> cat <fichier> (permet d'afficher le contenu du fichier page par page) (permet d'afficher le contenu du fichier en une seule fois) find. -name <texte> -print (trouve un fichier dont le contient "texte") Commande de gestion des processus ps aux : permet de lister les processus actifs. Ces processus sont identifiés par des numéros appelés PID. top : permet de lister tous les processus actifs (interactif) kill <PID> : tue le processus identifié par le numéro <PID>. ATTENTION! Dans de nombreux cas, taper Ctrl-C ou Ctrl-D suffit pour arrêter le processus.

Les commandes usuelles (au terminal) man <nom commande> : (manuel) pour connaître les options d'une commande - pour sortir : "q" touch <nomfichier> : existant (1) crée <nomfichier> s'il n'existe pas déjà (2) modifie la date de modification de <nomfichier> si Papillon:~ xgiraud$ mkdir Essai Papillon:~ xgiraud$ cd Essai/ Papillon:Essai xgiraud$ ls Papillon:Essai xgiraud$ touch toto Papillon:Essai xgiraud$ ls -l total 0 -rw-r--r-- 1 xgiraud staff 0 28 jan 09:36 toto Papillon:Essai xgiraud$ touch toto Papillon:Essai xgiraud$ ls -l total 0 -rw-r--r-- 1 xgiraud staff 0 28 jan 14:38 toto Papillon:Essai xgiraud$