X-Git-Url: http://git.nguyen.vg/gitweb/?a=blobdiff_plain;f=prog_internet%2Fprog_internet_01.xhtml;fp=prog_internet%2Fprog_internet_01.xhtml;h=0000000000000000000000000000000000000000;hb=0a552a95e70324a04e9d06bd30ac5bc96b2a58b5;hp=5928b084af5dd325c1c08fdc5f383f701528b92a;hpb=171bd61f3e4cf06638c6a90fdc053efbec9623ff;p=hacks%2FsimpleWebSlides.git diff --git a/prog_internet/prog_internet_01.xhtml b/prog_internet/prog_internet_01.xhtml deleted file mode 100644 index 5928b08..0000000 --- a/prog_internet/prog_internet_01.xhtml +++ /dev/null @@ -1,787 +0,0 @@ - - - - - Systèmes d'exploitation (1/2) - - - - - - - - - - - - - - - - - - - - -
-

Programmation Internet

-

Cours 1

- kn@lri.fr -
- -
-

Contenu du cours

-
    -
  1. Comprendre les bases du Web -
      -
    • Fonctionnement des ordinateusr Unix (cours 1 et 2)
    • -
    • Notions de réseau (cours 3 et 4)
    • -
    -
  2. -
  3. Programmer (pour) le Web -
      -
    • Pages statiques (HTML & CSS cours 5)
    • -
    • Pages dynamiques avec PHP (cours 6, 7 et 8)
    • -
    • Notions de sécurité des sites Web (cours 9)
    • -
    • Bonus (cours 10)
    • -
    -
  4. -

    Cours disponible en ligne - sur https://www.lri.fr/~kn/teaching_fr.html. Les - supports de cours seront distribués à partir de la semaine prochaine.

    -
- -
-
-

Modalités de Contrôle des Connaissances (MCC)

-

2 sessions:

- -

Rappel: - La défaillance fait obstacle au calcul de la moyenne - et implique l'ajournement. - La présence de l'étudiant étant obligatoire en TP [...], plus - d'une absence injustiée dans un enseignement peut entraîner - la défaillance de l'étudiant dans l'enseignement concerné - -

-
- -
-

Organisation

- -
-
-

Plan

-
    -
  1. Systèmes d'exploitation -
      -
    • 1.1 Principes des systèmes - d'exploitation
    • -
    • 1.2 Système de gestion de fichiers
    • -
    • 1.3 Système de gestion de processus
    • -
    -
  2. -
-
- -
-

Système d'exploitation

-

Quelques systèmes:

- -
- -
-

Système d'exploitation

-

Qu'est-ce qu'un système d'exploitation ?

- -

Quelles sont les ressources d'une machine?

- -
-
-

Système d'exploitation

-
-
- Haut niveau
- ↓
- Bas niveau -
-
- -
-
-
-

Le système Unix

- - - - - - - - - - - -
1965 MultICS: Multiplexed Information and Computing Service (Bell & MIT)
1969 Unix: 1ère version en - assembleur (AT&T)
1972-73 Unix réécrit en C
1976 Invention de TCP/IP
1977 Berkeley Software Distribution - (BSD)
1985Unix System V
1988Minix
1992Linux
-
-
-
-

Unix : architecture

- - - - - - - - - - - - -
- Applications -
- Interface utilisateur - - Services -
- Noyau (kernel) -
- Micro-code -
- Matériel -
-
-
-
-

Zoom sur le noyau

- - - - - -
- Applications -
- - Bibliothèques - (libc, DirectX, OpenGL, …) -
-
- - - - - - - -
- Appels systèmes -
- Noyau
-
- pilotes de périphériques - ordonnanceur (gestion du temps CPU)
- gestionnaire de mémoire - système de fichier
-
-
- Matériel -
-
-
-

Le Shell Unix

- -
-
-

Le Shell Unix

-

Exemple de session shell:

-
- - $ ls - Documents Downloads Public Person - $ cd Documents - $ ls - compte_rendu.txt - $ mv compte_rendu.txt cr.txt - $ ls - cr.txt - -
-
- -
-

Plan

-
    -
  1. Systèmes d'exploitation -
      -
    • 1.1 Principes des systèmes - d'exploitation
    • -
    • 1.2 Système de gestion de fichiers
    • -
    • 1.3 Système de gestion de processus
    • -
    -
  2. -
-
-
-

Système de gestion de fichiers (filesystem)

- -
-
-

Le concept de fichier

-

- Un fichier est une collection d'infromations - numériques réunies sous un même nom et - enregistrée sur un support de stockage -

- -
-
-

Le concept de fichier

-

Ne pas confondre:

- -
-
-

Les attributs d'un fichier

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Nom -
Propriétaireutilisateur qui possède ce fichier
Groupegroupe d'utilisateurs qui possède ce fichier
Emplacementlocalisation du fichier sur le support physique
Tailleen octet (peut être la taille réelle ou la taille - occupée sur le support)
Permissions « qui a quel droit » sur le fichier (lecture, écriture, - exécution, …) -
Type -
Datesdernier accès, dernière modification, création, …
-
-
-

Organisation logique des fichiers

-

Usuellement, les fichiers sont regroupés en répertoires. Les -répertoires sont imbriqués les uns dans les autres de manière a former -une arborescence. -

-

- Sous Unix il y a un répertoire racine, « / » -(slash) qui contient toute l'arborescence du système.
-Chaque utilisateur possède aussi un répertoire personnel -

-
- -
-

Noms de fichiers et chemins

-

-Un chemin est une liste de répertoire à traverser pour -atteindre un fichier ou répertoire donné. -Sous Unix, le séparateur de chemin est le « / »
-Les chemins absolus commencent par un / et - dénotent des fichiers à partir de la racine. Exemple: - - /home/kim/Documents/ProgInternet/cours01.pdf - -Les chemins relatifs dénotent des fichiers à partir du - répertoire courant. Exemple:
- Documents/ProgInternet/cours01.pdf -si on se trouve dans le répertoire /home/kim -
-
-Les noms spéciaux: « . » dénote le répertoire - courant, - « .. » le répertoire parent, « ~ » le répertoire de - l'utilisateur et « ~toto » le répertoire de l'utilisateur - toto -

-
- -
-

Utilisation du Shell

-

- Le shell affiche un invite de commande - (prompt). Exemple:
- kim@machine $

- On peut alors saisir une commande:

- kim@machine $ ls *.txt

- Le shell affiche la sortie de la commande:

- fichier1.txt fichier2.txt

- Certains caractères doivent être précédés d'un « \ » (échappés):

- kim@machine $ ls mon\ fichier\#1.txt -

-
-
-

La ligne de commande

-

- Une ligne de commande a la forme:
- prog item1 item2 item3 item4 … -

-
    -
  1. Si prog est un chemin il doit - dénoter un fichier exécutable -
  2. -
  3. Si prog est un simple nom, il doit dénoter un fichier - exécutable se trouvant dans un des répertoires prédéfinis - (/bin, /usr/bin, …) -
  4. -
  5. Pour chaque itemi (séparés par un ou plusieurs espaces - non échappés) le shell fait une expansion de nom -
  6. -
  7. La liste de toutes les chaînes de caractères expansées est - passée comme argument au programme prog -
  8. -
-
-
-

Expansion des noms
Expressions régulières glob

-

- Certains caractères sont interprétés de manière spéciale par le - shell. Ces caractères sont « expansés » selon des - règles. Si la forme expansée correspond a un ou plusieurs fichiers - existants, alors leurs noms sont placés sur la ligne de commande. Sinon - la chaîne de caractère de départ garde sa valeur textuelle. -

-
-
-

Expressions régulières glob

-

Règles d'expansion: - * n'importe quelle chaîne
- ? n'importe quel caractère - [ab12…] un caractère dans la liste
- [^ab12…] un caractère absent de liste
- [a-z] un caractère dans l'intervalle
- [^a-z] un caractère absent de l'intervalle
- {m1, m2} - motif m1 ou m2
- ?(m1|…|mn) - - @(m1|…|mn) - - *(m1|…|mn) - - +(m1|…|mn)
- k motifs parmi mi
- ?: 0 ≤ k ≤ 1 - - @: k = 1 - - *: k ≥ 0 - - +: k ≥ 1 -
- !(m1|…|mn): - ni m1, …, ni mn -

-
-
-

Expressions régulières glob
Exemples

-

ls !(*[aeiouy]?) - La chaine « !(*[aeiouy]?) » est remplacée par la liste de tous - les fichiers dont l'avant dernière lettre du nom n'est pas une - voyelle. S'il n'y a pas de tel fichier, la chaîne - « !(*[aeiouy]?) » est passée à la commande ls.

- - ls [0-9]* affiche la liste des fichiers commençant par un - chiffre

- ls +(abc) affiche la liste des fichiers dont le nom est une - répétition de « abc Â». -
-

-
-
-

Commandes shell de base

- -
-
-

Droits et propriétés des fichiers

-

-Sous Unix un utilisateur est identifié par son login (ou nom -d'utilisateur). Chaque utilisateur est dans un groupe - principal.
-Chaque fichier appartient à un utilisateur et à un groupe.
-Chaque fichier possède 3 permissions pour son propriétaire, son groupe -et tous les autres. Les permissions sont lecture, écriture, exécution -(plus d'autres non abordées dans ce cours).
- - - - - - - - - -
Permission fichier répertoire
lecture (r) lire le contenu du - fichierlister le contenu du répertoire
écriture (w) écrire dans le fichiersupprimer/renommer/créer des - fichiers dans le répertoire
exécution - (x) exécuter le fichier - (si
- - c'est un programme)
rentrer dans le répertoire -
-$ ls -l -drwxr-x--- 9 kim prof 4096 Sep 7 21:31 Documents -

-
-
-

La commande chmod

- - chmod permissions chemin1 … cheminn - -

modifie les permissions des fichiers 1 à n. La chaîne -permissions est soit une suite de modifications de -permissions symbolique soit l'ensemble des permissions données -de manière numérique:
- - chmod 755 fichier.txt - chmod u-w,a+x,g=w fichier.txt - -

-
-
-

Permissions numériques

-

-On groupe les bits de permissions par trois puis on convertit -en décimal:
- - - - - - - - - - - - - - -
Utilisateur - GroupeAutres
r w x r w x r w x
1 1 0 1 0 0 0 0 0
6 - 40
-Le fichier est lisible et modifiable mais pas exécutable par son -propriétaire, lisible pour le groupe. Les autres ne peuvent ni le lire -ni le modifier.

-
-
-

Permissions symboliques

- - cible modifieur permission - - -

-Exemple:
- chmod u+rw,u-x,g+r,g-wx,o-rwx fichier.txt -

-
-
-

Liens symboliques (1)

-

Pour des raisons d'organisation, on veut pouvoir « voir » le même - fichier ou répertoire sous deux noms différents (ou à deux endroits - différents). Par exemple: -

- - $ ls -l Documents/Cours - total 8 - drwxr-xr-x 3 kim prof 4096 Sep 9 11:30 Licence - drwxr-xr-x 3 kim prof 4096 Sep 9 11:30 Master - - $ cd Documents/Cours/Master; ls - Compilation XMLProgInternet - - $ cd XML_Prog_Internet; ls - cours01 cours02 cours03 cours04 cours05 cours06 Prereq - - $ ls -l Prereq - lrwxrwxrwx 1 kim prof 28 Sep 9 11:30 Prereq -> ../../Licence/UnixProgWeb/ - - -
-
-

Liens symboliques (2)

-

La commande ln permet de créer des liens - symboliques. Un lien est un petit fichier qui contient - un chemin vers un fichier de destination. -

-

Exemple d'utilisation

- $ ln -s ../foo/bar/baz/toto.txt rep/titi.txt - -

crée un lien vers le fichier toto.txt - sous le nom titi.txt (chacun placé dans des sous/sur - répertoires) -

- -

Cela permet de créer l'illusion que la cible a été copiée à - l'identique, sans les inconvénients

-
-
-

À propos de la suppression

-

La commande rm fichier efface un fichier définitivement
- La commande rm -d rep efface un répertoire s'il est vide
- La commande rm -r rep efface un répertoire récursivement - mais demande confirmation avant d'effacer des éléments
- La commande rm -rf rep efface un répertoire - récursivement et sans confirmation

-

Toute suppression est définitive

-

Gag classique :

- $ mkdir \~ - ... - $ ls - Documents Photos Musique ~ - $ rm -rf ~ - ☠ ☠ ☠ ☠ ☠ ☠ - -
-
-

Obtenir de l'aide sur une commande

-

La commande man permet d'obtenir de l'aide sur - une commande. Lors qu'une page d'aide est affichée, on peut la faire - défiler avec les touches du clavier, la quitter avec « q » - et rechercher un mot avec la touch « / »

- -LS(1L) Manuel de l'utilisateur Linux LS(1L) - - -NOM - ls, dir, vdir - Afficher le contenu d'un répertoire. - -SYNOPSIS - ls [options] [fichier...] - - Options POSIX : [-1acdilqrtuCFR] - - Options GNU (forme courte) : [-1abcdfgiklmnopqrstuxABCD­ - FGLNQRSUX] [-w cols] [-T cols] [-I motif] [--full-time] - [--format={long,verbose,commas,across,vertical,single-col­ - umn}] [--sort={none,time,size,extension}] - [--time={atime,access,use,ctime,status}] - [--color[={none,auto,always}]] [--help] [--version] [--] - -DESCRIPTION - La commande ls affiche tout d'abord l'ensemble de ses - arguments fichiers autres que des répertoires. Puis ls - affiche l'ensemble des fichiers contenus dans chaque - répertoire indiqué. dir et vdir sont des versions de ls - affichant par défaut leurs résultats avec d'autres for­ - mats. - - - -
-
-

Recherche de fichiers

-

La commande find rep criteres permet de trouver - tous les fichiers se trouvant dans le répertoire rep (ou un - sous répertoire) et répondant à certains critères. Exemples de - critères :

- -

Comment trouver toutes les options de la commande find - ? man find

-
-
-

Quelques commandes utiles

- -

On verra comment composer ces commandes pour exécuter des - opérations complexes

-
- -