Changeset 206


Ignore:
Timestamp:
11/05/08 05:42:29 (15 years ago)
Author:
nanardon
Message:
  • add swap, temp file and '. & ..' slides
Location:
trunk/unix
Files:
1 added
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/unix/Makefile

    r204 r206  
    1818        fork.c \ 
    1919        sparse.c \ 
     20        temp.sh \ 
    2021 
    2122unix_IMAGESJPG= \ 
  • trunk/unix/unix.tex

    r205 r206  
    211211\end{itemize} 
    212212\end{block} 
    213  
     213\vfill 
    214214\begin{alertblock}{On évitera cependant} 
    215215\begin{itemize} 
     
    220220\end{itemize} 
    221221\end{alertblock} 
    222  
     222\end{frame} 
     223 
     224\begin{frame}[fragile] 
     225\frametitle{. et ..} 
     226\begin{block}{chaque dossier contient:} 
     227\begin{itemize} 
     228\item \verb+.+ le répertoire lui même 
     229\item \verb+..+ le parent 
     230\end{itemize} 
     231\end{block} 
     232\vfill 
     233\pause 
     234\begin{alertblock}{trop de ..} 
     235\verb+/..+ pointe sur \verb+/+ 
     236 
     237\begin{verbatim} 
     238$ ls ../../../../../../etc/passwd 
     239../../../../../../etc/passwd 
     240\end{verbatim} 
     241 
     242On rebondit sur \verb+/+ et on redescend dans \verb+/etc/passwd+. 
     243\end{alertblock} 
     244\end{frame} 
     245 
     246\begin{frame}[fragile] 
     247\frametitle{Fichiers temporaires} 
     248\begin{block}{Un fichier qu'on ne va pas garder, mais:} 
     249\begin{itemize} 
     250\item il ne doit pas exister 
     251\pause 
     252\item nom aléatoire (écrasement basé sur un lien symbolique) 
     253\pause 
     254\item le placer au bon endroit 
     255\end{itemize} 
     256\pause 
     257\vfill 
     258\textbf{en pratique} 
     259\begin{itemize} 
     260\item shell: mktemp 
     261\item C: mkstemp 
     262\item Perl: module File::Temp 
     263\end{itemize} 
     264\end{block} 
     265\pause 
     266\vfill 
     267\begin{exampleblock}{} 
     268\small 
     269\listinginput[1]{1}{temp.sh} 
     270\end{exampleblock} 
    223271\end{frame} 
    224272 
     
    416464\end{exampleblock} 
    417465\pause 
     466\vfill 
    418467\begin{exampleblock}{Deuxième console:} 
    419468\begin{verbatim} 
     
    423472\end{exampleblock} 
    424473\pause 
     474\vfill 
    425475\begin{block}{Cet exemple simple revient à} 
    426476\begin{verbatim} 
     
    435485\frametitle{principe} 
    436486\begin{block}{le montage} 
    437 \begin{itemize} 
    438 \item une méthode d'accès 
    439 \item une structure arborescente 
    440 \item on le fait apparaitre dans un répertoire existant 
    441 \end{itemize} 
    442 \end{block} 
    443  
     487Le système de fichier est stocké sur un support (disque, fichier, cdrom, \ldots) 
     488 
     489Le noyau le fait apparaitre dans un répertoire. 
     490\end{block} 
     491\vfill 
    444492\begin{exampleblock}{la commande mount} 
    445493\begin{verbatim} 
     
    448496/dev/sda8 on /home type ext3 (rw,noatime) 
    449497[...] 
    450 virgo:/home/data on /mnt/disk type nfs (ro,addr=192.168.76.1) 
     498virgo:/home/data on /mnt/disk type nfs 
     499    (ro,addr=192.168.76.1) 
    451500\end{verbatim} 
    452501\end{exampleblock} 
     
    455504\begin{frame}[fragile] 
    456505\frametitle{Organisation globale} 
    457 \begin{block}{} 
     506\begin{block}{L'emplacement des fichiers} 
    458507\begin{tabular}{ll} 
     508\verb+/boot+&Bootloader et noyaux\\ 
    459509\verb+/etc+&fichiers de configuration\\ 
    460510\verb+/bin+, \verb+/usr/bin+&les executables utilisateur\\ 
     
    466516\verb+/tmp+, \verb+/var/tmp+&données temporaires\\ 
    467517\verb+/opt+&espace pour les apps. propriétaires\\ 
    468 \verb+/proc+, \verb+/sys+&représentation temp réelle du système\\ 
    469518\end{tabular} 
    470519\end{block} 
     520\end{frame} 
     521 
     522\begin{frame}[fragile] 
     523\frametitle{Organisation globale (2)} 
     524\begin{block}{Système de fichiers spéciaux} 
     525\begin{tabular}{ll} 
     526\verb+/dev+&les fichiers de périphériques\\ 
     527\verb+/proc+&représentation temp réelle du système\\ 
     528\verb+/sys+&configuration du noyau, informations sur le matériel\\ 
     529\end{tabular} 
     530\end{block} 
     531\pause 
    471532 
    472533\begin{alertblock}{le FHS} 
     
    475536\end{frame} 
    476537 
    477  
    478 \section{les processus} 
     538\section{Les processus} 
    479539 
    480540\subsection{le temps CPU} 
     
    483543\frametitle{scheduler préemptif} 
    484544\begin{alertblock}{préemptif ?} 
    485 Seul le noyau décide du temps CPU alouer ! 
    486 \end{alertblock} 
    487  
     545Seul le noyau décide du temps CPU aloué ! 
     546\end{alertblock} 
     547\pause 
     548\vfill 
    488549\begin{block}{Le scheduler} 
    489550Le scheduler est appelé à interval régulier (plusieurs centaintes de fois par seconde) pour donner du temps 
     
    497558\end{frame} 
    498559 
    499 \subsection{la ram} 
     560\subsection{La ram} 
    500561 
    501562\begin{frame} 
     
    509570\item le code et données du noyau 
    510571\end{itemize} 
     572\pause 
    511573\item Mémoire haute (swappable): 
    512574\begin{itemize} 
     
    514576\item données des applications 
    515577\end{itemize} 
     578\pause 
    516579\item Mémoire vive libre: 
    517580\begin{itemize} 
     
    522585\end{itemize} 
    523586\end{block} 
    524  
     587\end{frame} 
     588 
     589\begin{frame} 
     590\frametitle{Gestion} 
     591 
     592\begin{block}{la swap ?} 
     593Extension sur disque de la mémoire. 
     594\pause 
     595 
     596Elle sert: 
     597\begin{itemize} 
     598\item quand la mémoire vive est pleine 
     599\item pour mettre de coté des données peu utilisées 
     600\end{itemize} 
     601 
     602Mémoire disponible = mémoire vive + swap 
     603\end{block} 
     604\pause 
     605\vfill 
    525606\begin{alertblock}{} 
    526 Un système qui swap un peu n'est pas surchargé ! 
    527 \end{alertblock} 
     607Un système qui swap \textbf{un peu} n'est pas surchargé ! 
     608\end{alertblock} 
     609\vfill 
     610\pause 
     611\begin{block}{La Ram est virtuelle} 
     612De par les aller retour RAM-SWAP, et la fragmentation, le système virutalize 
     613les adresses allouées. 
     614\end{block} 
    528615\end{frame} 
    529616 
Note: See TracChangeset for help on using the changeset viewer.