2.1 2.5. Processeur LANGAGE ET CONTRÔLE D'UN ORDINATEUR. Processeur NOYAU. Programme (code en mémoire) Programme (code en mémoire) Processeur NOYAU



Documents pareils

Introduction au Système d Exploitation Unix/Linux

TP1 - Prise en main de l environnement Unix.

Cours Programmation Système

Premiers pas en Linux

Introduction aux Systèmes et aux Réseaux

Programmation système en C/C++

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

TP 1 Prise en main de l environnement Unix

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

Cours 6 : Tubes anonymes et nommés

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

Le système de gestion des fichiers, les entrées/sorties.

Cours de Système : Gestion de Fichiers

Outils pour la pratique

Chapitre 3 : Système de gestion de fichiers

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

Programmation système I Les entrées/sorties

Chapitre IX : Virtualisation

Personnes ressources Tice. Académie de Rouen

Contents. 1 Premiers pas en Linux. 1.2 Généralités. 1.1 Bref historique Linux

Shell Bash Niveau débutant

Année Cours Unix-Shell. par. Karam ALLALI. Ecole Spéciale d Informatique

Polycopié Cours Système d Exploitation I. Programme : Filière SMI S3

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

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

Premiers pas. Shell? Les processus vu comme des filtres. commandes

La Comptabilité UNIX System V Acctcom

SYSTÈME DE GESTION DE FICHIERS

TP 4 de familiarisation avec Unix

LEs processus coopèrent souvent pour traiter un même problème. Ces

Programmation système de commandes en C

Qu'est-ce qu'un processus: Définitions

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

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

SYSTÈME DE GESTION DE FICHIERS SGF - DISQUE

Session 8: Android File System

Système et réseaux (SR1) Gestion des utilisateurs

Introduction aux Systèmes et aux Réseaux

Les Boitiers de Vote Electroniques (Clickers)

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

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

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

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

Le système GNU/Linux IUP NTIC /11/05

UBUNTU Administration d'un système Linux (4ième édition)

Cours Linux. Cours en ligne Administrateur Systèmes Linux. Académie Libre

Projet Administration Réseaux

3IS - Système d'exploitation linux - Programmation système

Atelier La notion de session utilisateur sous Linux

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

Système de Gestion de Fichiers

sshgate Patrick Guiran Chef de projet support

Le Network File System de Sun (NFS)

Systèmes d exploitation

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

Exécutif temps réel Pierre-Yves Duval (cppm)

GESTION DES FICHIERS C/UNIX

Manuel de System Monitor

Bon ben voilà c est fait!

Guide d'installation de la base de données ORACLE 10g ( ) pour linux FEDORA CORE 4.

L informatique en BCPST

Exercice sur les Dockers

Installation software

6 - Le système de gestion de fichiers F. Boyer, UJF-Laboratoire Lig, Fabienne.Boyer@imag.fr

Cours Unix 1. Présentation d UNIX. Plan du cours 1

Les processus. Système L3, /39

Classe et groupe : 1P 3 SEN TRI. Ubuntu : serveur Contrôleur de Domaine (PDC) avec SAMBA

Gestion des fichiers. Telecom-ParisTech BCI Informatique

NON URGENTE TEMPORAIRE DEFINITIVE OBJET : RÉCUPÉRATION DES DONNÉES CLIENT SUR DISQUE DUR DÉFECTUEUX OU INVALIDÉ

Sauvegardes par Internet avec Rsync

Serveur de sauvegardes incrémental

Comment configurer Kubuntu

UNIX DÉBUTANTS. Olivier Collin CNRS Station Biologique de Roscoff

Introduction à l informatique

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

Le prototype de la fonction main()

Plan global. Programmation système II. Socket du domaine UNIX. Plan. Socket UNIX, Terminaux, Async IO, Mémoire, ELF.

Chapitre 10 : Logiciels

Formation Technicien Supérieur de Support en Informatique T2SI. Le module LINUX. Session J04 Version 01

Sauvegarde sous MAC avec serveur Samba

Mon premier rpm. 7 juin Avant de commencer RPM URPMI RPMBUILD... 2

NRPE. Objectif. Documentation. Procédures

ASRb/Unix Avancé II. Chapitre 2. Utilitaires réseaux. Arnaud Clérentin, IUT d Amiens, département Informatique

TRAVAUX PRATIQUES Programmation Système Langage C / Système UNIX. 2 e année Génie Informatique

ftp & sftp : transférer des fichiers

Introduction à l Administration Systèmes et Réseaux

WEBMESTRE : CONCEPTION DE SITES ET ADMINISTRATION DE SERVEURS WEB

Table des matières Hakim Benameurlaine 1

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

Cloner un disque dur

1 Démarrage de Marionnet

Département de génie électrique. ELE784 - Ordinateurs et programmation système. Laboratoire #1

Cours Shell Unix Commandes & Programmation. Révision corrigée du 31/01/2003

Structure d un programme

INFO-F-404 : Techniques avancées de systèmes d exploitation

Enoncé du TP 8 Système

Les processus 2/54. Qu est-ce qu un processus? 3(6)/54. Se souvenir 1(1)/54. Le système de fichiers (exemple du disque dur)

KAJOUT WASSIM INTERNET INFORMATION SERVICES (IIS) 01/03/2013. Compte-rendu sur ISS KAJOUT Wassim

Transcription:

LANGAGE ET CONTRÔLE D'UN ORDINATEUR 2.1 2.5 Processeur Processeur (code en mémoire) Langage: instructions machine NOYAU (code en mémoire) Langage enrichi par les fonctions du noyau (API) Le programme (code) doit être présent en mémoire pour utiliser l'ordinateur. Comment le charger en mémoire? Il faut un programme en mémoire pour appeler le noyau. Le noyau contribue au chargement de programmes. Processeur NOYAU s système Langage enrichi par les programmes système Les programmes système peuvent être utilisés pour compiler et exécuter un programme utilisateur. Comment interagir avec l'utilisateur? Tous les programmes ont cette possibilité avec l'aide du noyau. Utilisateur Processeur NOYAU clavier écran SHELL Le "Shell" est le premier processus qui crée les autres processus selon les commandes de l'utilisateur. Processus entités autonomes. Réseau de coopération au lieu d'une hiérarchie. Synchronisation entre processus. Processus contrôlant le terminal.

Processeur NOYAU SHELL Interface terminal Processus? Processeur NOYAU Graphique/Fenêtres Interface graphique avec fenêtres Utilisateur écran chaînes de caractères Utilisateur cable vidéo cable réseau clavier Mainframe Affichage de caractères (25x80). Affichage de graphiques. Faible débit. Fort débit. Portable, programmation simple. Programmation difficile, en progression. AMORÇAGE 2.10 s utilisateurs 2.7 appels au noyau Bibliothèques Séquence de lancement de Unix getty getty /etc/rc Séquence shell /etc/ttys Tableau d'initialisation /etc/passwd Organisation interne de Unix Niveau utilisateur Niveau noyau Sous-système de fichiers Interface des appels système Buffer cache Sous-système de contrôle des processus Communitation interprocessus Ordonnanceur Gestion de la mémoire Le Shell interprète et exécute les commandes de l'usager. Commandes internes vs commandes externes. login shell shell Fichier des mots de passe /etc/profile Script shell ~/.bash_profile Script shell /etc/bash.bashrc Script shell ~/.bashrc Script shell Caractère Bloc Contrôleurs de Périphériques Niveau noyau Niveau matériel Contrôle de la partie matérielle Partie matérielle

Appels système de Unix Gestion des identificateurs getpid identification du processus getppid identification du père du processus getuid identification du propriétaire du processus geteuid identification du propriétaire effectif setuid modification du propriétaire d'un processus seteuid modification du propriétaire effectif 2.7 Gestion des fichiers open ouverture d'un fichier creat création d'un inode read lecture write écriture lseek accès aléatoire dup création d'un descripteur de fichier clone pipe création d'un tube close fermeture d'un fichier chdir définition du répertoire de travail chroot changement de la racine du système de fichiers chown changement du propriétaire du fichier chmod modification des droits d'accès stat, lstat, fstat information sur le fichier link création d'un lien unlink suppression d'un lien mount montage d'un volume umount démontage d'un volume fcntl manipulation de la table des fichiers mknod création de tube nommé 2.8 2.8 2.8 Gestion de processus Gestion des terminaux (norme POSIX) fork exec exit création d'un processus remplacement du code d'un processus terminaison d'un processus tcgetaddr tcsetaddr caractéristiques d'un terminal modification des caractéristiques Synchronisation de processus Gestion des terminaux (BSD) wait pause signal kill attente du signal de fin d'un fils attente d'un signal action à exécuter à réception d'un signal émission d'un signal à un processus ioctl caractéristiques d'un terminal

Répertoire ALPHA GESTION DES FICHIERS inodes et structure d'un répertoire Table inode de ALPHA Disque Super Bloc inodes Fichiers Un fichier peut avoir plusieurs noms/chemins d'accès. 6.17 struct icommon { u short icmode; /* 0: mode and type of file */ short ic_nlink; /* 2: number of links to file */ short icuid; /* 4: owner's user id */ short icgid; /* 6: owner's group id */ quad ic_size; /* 8: number of bytes in file */ time_t ic_atime; /* 16: time last accessed */ long ic_atspare; time_t ic_mtime; /* 24: time last modified */ long ic_mtspare; time_t icctime; /* 32: last time mode changed */ long ic_ctspare; daddr_t ic_db[ndaddr]; /* 40: disk block addresses */ daddr_t ic_ib[niaddr]; /* 88: indirect blocks */ long ic_flags; /* 100: status, currently unused */ long ic_blocks; /* 104: blocks actually held */ long ic_spare[5]; /* 108: reserved, currently unused } i_ic; 6.18 Champ icmode : type de fichier et protection 2.19 Gestion des fichiers par le noyau 6.23 Protection ou droit d'accès drwxrwxrwx o - other - autres Mémoire usager Mémoire système Disque bloc de données g - group - groupe u - user - utilisateur / propriétaire type de fichier - : fichier standard d : répertoire l : lien symbolique b : périphérique "block" c : périphérique "character" s : "socket" Droit d'accès r : en lecture w : en écriture x : pour exécution read( 3, ) fichiers ouverts par processus Table globale des fichiers i-nodes en mémoire synchronisation i-nodes Un fichier peut avoir plusieurs noms ou liens (champ ic_nlink).

Mémoire usager Gestion des fichiers par le noyau Mémoire système Disque Gestion des fichiers par le noyau FILE * stdin fd = fopen ( ) 6.22 fread(, ) processus PCB bloc de données buffer 3 buffer FILE * stdin 3 fichiers Table globale des fichiers i-nodes en mémoire synchronisation i-nodes Fichier d'entrée standard 0 utilisateur 2 Fichier des erreurs standard 1 Fichier de sortie standard file 3 2 1 int Processus utilisateur NOYAU 0 id = open ( ) table des processus table des fichiers ouverts stderr stdout stdin Organisation des répertoires et des périphériques 6.19 Installation (mount) d'un systèmes de fichiers 6.25 / bin ls etc dev cat hda1 lib tty1 usr bin include sys opt lib stdio.h unistd.h tmp proc man home bacc lumon home1 cours jagar7 var prof mitur3 sbin Chemin d'accès (path) absolu ou relatif. types.h lab1.bashrc Disque 1 RACINE / d1 d2 d3 d1a d1b Disque 2 / p1 p2 p1a p2a p2b mount /dev/hda2 /d2 Disque 1 d1 d1a d1b p1 p1a RACINE / d3 d2 / p2 p2a p2b Disque 2 umount /d2

COMMANDES UNIX 2.15 documentation 2.11 syntaxe: nom-cmd option parametres option (flag) commence par "-" (suivi d'une lettre) ou "--" (suivi d'un mot, nouveauté de Linux) ls -l --color /usr/include commande "man" section 1 commandes standards section 2 appels système section 3 fonctions C standards man ls ls -l > dir.txt cat texte more commande "info" Fichier d'entrée standard < >& utilisateur Fichier des erreurs standard redirection Fichier de sortie standard > >> cat texte pipe more aide dans KDE dans les laboratoires localiser les "manpages" ou info dans l'arbre à gauche sur le "web" http://linux.ift.ulaval.ca/ http://www.ift.ulaval.ca/~beaulieu/linux/ autres Commande ls Listing court % ls SEEK.o io.h test1 cours oper Listing long FICHIERS % ls -l total 10 -rwxr-xr-x 1 jean 217 Jul 14 09:47 SEEK.o -rw-r--r-- 1 jean 0 Aug 20 14:05 cours -r--r--r-- 1 jean 134 Jul 16 16:16 io.h -rwxr-xr-x 1 Jean 1406 Jun 18 16:08 oper drwxr-xr-x 2 Jean 512 Jul 17 11:28 test1 nombre de liens types et droit d'accès propriétaire Dimension (octets) date et heure Nom du fichier 2.19 Protection ou droit d'accès drwxrwxrwx o - other - autres g - group - groupe u - user - utilisateur / propriétaire type de fichier - : fichier standard d : répertoire l : lien symbolique b : périphérique "block" c : périphérique "character" s : "socket" Droit d'accès r : en lecture w : en écriture x : pour exécution + chmod ugo = rwx - fichier chmod go+r unfichier 2.19

FICHIERS FICHIERS ls ls -al cat FichierTexteAffiché more FichierTexteAffiché. cp Fichier NomDeLaCopie mv VieuxNom NouveauNom mv Fichier RépertoireDestination rm FichierDétruit rm -r RépertoireDétruit Lister les noms de fichier du répertoire. Lister tous les fichiers du répertoire avec leur description. Afficher au terminal le contenu du fichier. Afficher le fichier au terminal une page à la fois. Copier un fichier en spécifiant le nom de sa copie. Renommer un fichier. Déplacer un fichier dans un autre répertoire. Détruire un fichier. Détruire un répertoire ainsi que tous les fichiers et sous-répertoires qui s'y trouvent. chmod Mode FichierOuRépertoire. Changer le mode d'accès du fichier. file * Lister le type de chacun des fichiers du répertoire. find / -name FichierCherché -print Rechercher dans tout le système de fichier l'emplacement d'un fichier. ln Fichier NouveauNom Crée un second lien sur un même fichier. lpr FichierTexteImprimé.. Imprimer le fichier. RÉPERTOIRES SHELL cd NouveauRépertoireCourant. Changer de répertoire courant. bash Créer un sous processus shell. pwd Imprimer le nom du répertoire courant. exit Terminer un shell (ou session à distance). mkdir NouveauRépertoire. Créer un nouveau répertoire. CTRL-C Interrompre et terminer un programme. rmdir Répertoire. Détruire un répertoire. CTRL-D Quitter un shell. Variable=Valeur Assigner une valeur à une variable du shell. set Afficher les variables du shell et leur valeur. alias NomDuSynonyme="SaDéfinition". Définir un synonyme pour une commande.

PROCESSUS COMPILATION (g++ pour le C++) 2.12 ps ps -alx. kill Pid kill -9 0 Lister ses processus avec leur pid. Lister tous les processus du système avec leur description. Tuer le processus dont le pid est en argument. Tuer tous les processus d'un usager. gcc Source.c Compiler un programme; le fichier exécutable a.out est créé. gcc -o NomDeCommande.c. Compiler un programme en spécifiant le nom du fichier exécutable créé. gcc -c Module.c Compiler le fichier objet Module.o. lint Source.c Vérifier la syntaxe d'un programme C. man CommandeOuFonction. vi FichierTexteEdité Autres Consulter la documentation du système. Editer un fichier avec vi et ex. grep "ChaîneCherchée" FichierTexte Afficher chaque ligne du fichier qui contient la chaîne entre guillemets. wc FichierTexte Compter le nombre de caractères, de mots et de lignes du fichier. Utilisation des stations Linux du département Aller dans intranet Pixel pour changer le mot de passe, dans guichet étudiant. Pour obtenir votre IDUL, utilisez Adage. Cliquez ici pour votre NIP Laboratoires: locaux 3708, 3910, 3928 et 3966.

Station en "dual boot": pour changer de système, choisissez "redémarrer" ("Shutdown") et ensuite choisissez "Linux" ou "Windows". Choix entre les environnements (KDE, ) Barre des tâches au bas de l'écran menu démarrer Shell Répertoire Aide Icônes d'application configuration Choix de bureau Barre des tâches Clipboard Heure

Shell (écran terminal) Quitter (Logout) Shell Répertoire Aide Un interface graphique englobe un interpréteur de commande "bach" shell. Un texte sélectionné est placé dans le clipboard. Shell (écran terminal) Gestionnaire de fichier (file manager) Un interface graphique englobe un interpréteur de commande "bach" shell. Un texte sélectionné est placé dans le clipboard.

Gestionnaire de fichier (file manager) Gestionnaire de fichier (file manager) Éditeur de texte Éditeur de texte Kate Éditeur de texte ascii pour écrire un programme. Possibilité de copier/coller avec le clipboard.

Éditeur de texte Kate Traitement de texte OpenOffice Traitement de texte OpenOffice AIDE