Guest User

Untitled

a guest
Jul 10th, 2018
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Latex 12.43 KB | None | 0 0
  1. \documentclass[A4paper,12pt]{report}
  2.  
  3. % Inclusion de packages
  4. \usepackage[french]{babel}
  5. \usepackage[utf8]{inputenc}
  6. %\usepackage[T1]{fontenc}
  7.  
  8. \usepackage{ae,aecompl}
  9. \usepackage{graphicx}
  10. \usepackage{multirow}
  11. \usepackage{enumerate}
  12. \usepackage{fancybox}
  13. \usepackage{fancyvrb}
  14. \usepackage{wrapfig}
  15.  
  16. \usepackage[usenames,dvipsnames]{pstricks}
  17. \usepackage{epsfig}
  18. \usepackage{pst-grad} % For gradients
  19. \usepackage{pst-plot} % For axes
  20.  
  21. \usepackage[crop=off]{auto-pst-pdf}
  22.  
  23.  
  24. % En-tête et pied de page
  25. \usepackage{fancyhdr}
  26. \pagestyle{fancy}
  27.  
  28. \lhead{}
  29. \chead{}
  30. \rhead{\bfseries Projet Cassiopée - Puzzle Shell}
  31. \lfoot{Puzzle Shell}
  32. \cfoot{XXXXXXXXXXX}
  33. \rfoot{\thepage}
  34. \renewcommand{\headrulewidth}{0.4pt}
  35. \renewcommand{\footrulewidth}{0.4pt}
  36.  
  37. % Définition de commandes
  38. \newcommand{\HRule}{\rule{\linewidth}{0.5mm}}
  39.  
  40. % Supprimer le mot chapitre
  41. \makeatletter
  42. \def\@makechapterhead#1{%
  43.   \vspace*{50\p@}%
  44.   {\parindent \z@ \raggedright \normalfont
  45.    \interlinepenalty\@M
  46.   \Huge \bfseries \quad#1\par\nobreak
  47.   \vskip 20\p@
  48.  }}
  49. \makeatother
  50.  
  51. % Supprimer numérotation section
  52.  
  53.  
  54. \begin{document}
  55.  
  56. \begin{titlepage}
  57.  
  58. \begin{center}
  59. % Title
  60. \HRule \\[0.4cm]
  61. { \huge \bfseries  Projet Cassiopée}\\[0.4cm]
  62. \emph{\large{Compte rendu }}
  63. \HRule \\[0.5cm]
  64. \end{center}
  65.  
  66. % Uncomment to show the Puzzle Shell Logo
  67.  
  68. \begin{center}
  69. \includegraphics[scale=0.8]{Puzzle_shell2.png}
  70. \end{center}
  71.  
  72. \begin{tabular}{l l}
  73. \Large \emph{Auteurs:} & \Large Dimitri \textsc{Fert} \\ [0.2cm]
  74. & \Large Clément\textsc{ Berland}\\ [0.2cm]
  75. & \Large Yue \textsc{Wang} \\ [0.2cm]
  76. & \Large Leila \textsc{Ben Romdhane } \\ [1cm]
  77. \Large \emph{Coordinateur :} & \Large Eric \textsc{Renault} \\
  78. \end{tabular}
  79. \vfill
  80.  
  81. \begin{center}
  82. % Bottom of the page
  83. {\large Lundi 10 October 2012} \\[10px]
  84. \includegraphics[scale=0.4]{logo_SP.jpg}\\
  85. \end{center}
  86.    
  87.  
  88. \end{titlepage}
  89.  
  90. \newpage
  91. \thispagestyle{empty}
  92. \mbox{}
  93.  
  94. \tableofcontents
  95.  
  96. \chapter{Introduction}
  97. \thispagestyle{fancy}
  98. Le but de ce projet est de développer un programme éducatif permettant d'enseigner de manière ludique les concepts propres au Shell Unix, qui peuvent être difficile à assimiler au premier abord. Ainsi, le Puzzle Shell est un programme écrit en Java permettant la génération d'une commande Unix en utilisant un assemblage de pièce de puzzle, où chaque pièce est un élément de cette commande.
  99. Ainsi, une pièce du puzzle correspond à une partie de la commande, et l'imbrication de ces pièces permet la génération de la commande voulue.
  100.  
  101. Chaque partie d'une commande à une place bien précise dans cette dernière et si cette place n'est pas respectée, la commande sera incorrecte. On ne peut pas par exemple écrire la commande suivante
  102. \begin{Verbatim*}[commandchars=\\\{\}]
  103. \fbox{ls > -a}
  104. \end{Verbatim*}
  105.  
  106.  
  107. %\begin{figure}[!h]
  108. %\begin{center}
  109. %\includegraphics[scale=0.50]{ima1.png}
  110. %\caption{Schéma explicatif du Puzzle Shell}
  111. %\end{center}
  112. %\end{figure}
  113. %\clearpage
  114.  
  115. \begin{wrapfigure}{l}{0.5\textwidth}
  116. \vspace{-70px}
  117. \begin{center}
  118. \scalebox{0.8} % Change this value to rescale the drawing.
  119. {
  120. \begin{pspicture}(0,-3.76)(10.26,5.5)
  121. \definecolor{color4007b}{rgb}{1.0,0.6,0.6}
  122. \definecolor{color4033b}{rgb}{0.8,1.0,0.8}
  123. \definecolor{color4077b}{rgb}{1.0,1.0,0.6}
  124. \definecolor{color4124b}{rgb}{0.6,1.0,1.0}
  125. \definecolor{color4170b}{rgb}{0.2,0.0,0.2}
  126. \definecolor{color4242}{rgb}{0.9764705882352941,0.9490196078431372,1.0}
  127. \definecolor{color4242b}{rgb}{0.9803921568627451,0.9568627450980393,1.0}
  128. \psframe[linewidth=0.12,linecolor=color4242,dimen=outer,fillstyle=solid,fillcolor=color4242b](7.0,3.1)(0.0,-3.1)
  129. \pspolygon[linewidth=0.12,fillstyle=solid,fillcolor=color4007b](0.6,1.3)(1.6,1.3)(1.6,0.7)(2.4,0.7)(2.4,1.3)(3.4,1.3)(3.4,0.3)(4.0,-0.1)(3.4,-0.5)(3.4,-1.3)(2.6,-1.3)(2.2,-1.7)(1.8,-1.7)(1.4,-1.3)(0.6,-1.3)
  130. \pspolygon[linewidth=0.12,fillstyle=solid,fillcolor=color4033b](0.6,1.9)(1.6,1.9)(1.6,1.5)(2.4,1.5)(2.4,1.9)(3.4,1.9)(3.4,2.7)(0.6,2.7)
  131. \usefont{T1}{ptm}{m}{n}
  132. \rput(2.0984375,0.01){ls}
  133. \usefont{T1}{ptm}{m}{n}
  134. \rput(1.9321876,2.21){-a}
  135. \pspolygon[linewidth=0.12,fillstyle=solid,fillcolor=color4077b](0.6,-1.7)(1.4,-1.7)(1.8,-2.1)(2.2,-2.1)(2.6,-1.7)(3.4,-1.7)(3.4,-2.7)(0.6,-2.7)
  136. \usefont{T1}{ptm}{m}{n}
  137. \rput(1.9735937,-2.39){error.txt}
  138. \pspolygon[linewidth=0.12,fillstyle=solid,fillcolor=color4124b](3.8,1.3)(3.8,0.3)(4.4,-0.1)(3.8,-0.5)(3.8,-1.3)(6.0,-1.3)(6.0,1.3)
  139. \usefont{T1}{ptm}{m}{n}
  140. \rput(5.2192187,0.01){result.txt}
  141. \psline[linewidth=0.04cm,fillcolor=color4170b](0.0,3.1)(7.0,3.1)
  142. \psline[linewidth=0.04cm,fillcolor=color4170b](7.0,3.1)(7.0,0.7)
  143. \psline[linewidth=0.04cm,fillcolor=color4170b](0.0,3.1)(0.0,-3.1)
  144. \psline[linewidth=0.04cm,fillcolor=color4170b](0.0,-3.1)(7.0,-3.1)
  145. \psline[linewidth=0.04cm,fillcolor=color4170b](7.0,-3.1)(7.0,-0.7)
  146. \rput{-270.0}(7.0,-7.04){\psarc[linewidth=0.04,fillstyle=solid](7.02,-0.02){0.7}{0.0}{180.0}}
  147. \usefont{T1}{ptm}{m}{n}
  148. \rput(6.3954687,-2.69){\psframebox[linewidth=0.02,framesep=0.1]{pipe}}
  149. \end{pspicture}
  150. }
  151. \vspace{-20px}
  152. \caption{Exemple non exhaustif de différenciation des pièces}
  153. \label{puzzle_exemple}
  154. \end{center}
  155. \end{wrapfigure}
  156. \hspace{-10px}
  157. Dans Unix, à chaque concept d'imbrication est associé un caractère unique. Ainsi on utilise le \verb+|+ pour faire un tube et le \verb+>+ pour faire une redirection par exemple. Il est alors naturel que l'on retrouve cette différenciation dans \emph{Puzzle Shell}. Puisque ce programme est graphique, nous différencierons ces concepts au niveau des extrémités des pièces de puzzle. On peut imaginer une extrémité carrée pour un tube et une extrémité triangulaire pour une redirection par exemple. Chacune des ces formes ayant son équivalent mâle/femelle pour pouvoir s'emboiter.  
  158. \clearpage
  159. \section{Rappel sur les commandes Unix}
  160.  
  161. \subsection{Commande générale}
  162. Une commande générale est composée de trois parties : \smallskip
  163.  
  164. \fbox{
  165. \parbox{0.9\textwidth}{%
  166. \begin{enumerate}[i.]
  167. \item Le nom de la commande
  168. \item Les arguments de la commande
  169. \item Les paramètres des arguments de la commande en question
  170. \end{enumerate}
  171. }} \\ \smallskip
  172.  
  173.  
  174. Un processus possède un entrée nommée\verb+ STDIN+, une sortie standard nommée \verb+STDOUT+ et une sortie d'erreur nommée \verb+STDERR+.
  175.  
  176.  
  177. \begin{figure}[!h]
  178. \begin{center}
  179. {
  180. \begin{pspicture}(0,-1.5)(9.86,1.5)
  181. \definecolor{color2083b}{rgb}{1.0,0.8,1.0}
  182. \definecolor{color2089b}{rgb}{0.2,0.0,0.2}
  183. \psline[linewidth=0.12,linestyle=dashed,dash=0.16cm 0.16cm,arrowsize=0.05291667cm 2.0,arrowlength=1.4,arrowinset=0.4,fillcolor=color2089b]{->}(6.2,-0.1)(7.6,-0.9)(9.8,-0.9)
  184. \psline[linewidth=0.12,arrowsize=0.05291667cm 2.0,arrowlength=1.4,arrowinset=0.4,fillcolor=color2089b]{->}(6.2,-0.1)(7.6,0.7)(9.8,0.7)
  185. \psellipse[linewidth=0.06,dimen=outer,fillstyle=solid,fillcolor=color2083b](4.5,0.0)(2.1,1.5)
  186. \psline[linewidth=0.12cm,fillcolor=color2089b,arrowsize=0.05291667cm 2.0,arrowlength=1.4,arrowinset=0.4]{->}(0.0,-0.1)(2.4,-0.1)
  187. \usefont{T1}{ptm}{m}{n}
  188. \rput(1.12625,0.21){STDIN}
  189. \usefont{T1}{ptm}{m}{n}
  190. \rput(8.704219,1.01){STDOUT}
  191. \usefont{T1}{ptm}{m}{n}
  192. \rput(8.490469,-0.59){STDERR}
  193. \usefont{T1}{ptm}{m}{n}
  194. \rput(4.5107813,0.01){Processus}
  195. \end{pspicture}
  196. }
  197. \caption[test3]{Entrée / Sortie d'un processus}
  198. \end{center}
  199. \end{figure} \smallskip
  200.  
  201. Chacunes de ces trois entrées/sorties peut être redirigée ou non. Ainsi on distingue deux types de schémas selon que l'on les redirige ou non.
  202.  
  203. \begin{figure}[!h]
  204. \begin{center}
  205. \scalebox{1} % Change this value to rescale the drawing.
  206. {
  207. \begin{pspicture}(0,-2.2989063)(13.28,2.2589064)
  208. \definecolor{color192b}{rgb}{0.8,1.0,1.0}
  209. \definecolor{color1133b}{rgb}{0.2,0.0,0.2}
  210. \psframe[linewidth=0.04,dimen=outer,fillstyle=solid,fillcolor=color192b](7.8,2.2589064)(5.0,0.7789062)
  211. \usefont{T1}{ptm}{m}{n}
  212. \rput(6.433125,1.7489063){Environnement}
  213. \usefont{T1}{ptm}{m}{n}
  214. \rput(6.411875,1.2689062){logiciel}
  215. \psframe[linewidth=0.04,dimen=outer,fillstyle=solid,fillcolor=color192b](3.36,-0.16109376)(0.0,-1.7610937)
  216. \usefont{T1}{ptm}{m}{n}
  217. \rput(1.8009375,-0.7110937){Execution}
  218. \usefont{T1}{ptm}{m}{n}
  219. \rput(1.7278125,-1.1710937){d'une commande}
  220. \rput(11.0,-0.8310937){\includegraphics{terminal.eps}}
  221. \psline[linewidth=0.12,arrowsize=0.05291667cm 3.0,arrowlength=1.4,arrowinset=0.4,fillcolor=color1133b]{->}(3.32,-0.98109376)(6.08,-0.98109376)(6.08,0.7789062)
  222. \psline[linewidth=0.12,arrowsize=0.05291667cm 3.0,arrowlength=1.4,arrowinset=0.4,fillcolor=color1133b]{->}(6.76,0.7789062)(6.76,-0.98109376)(8.72,-0.98109376)
  223. \usefont{T1}{ptm}{m}{n}
  224. \rput(11.071719,-2.0710938){Réponse du programme}
  225. \end{pspicture}
  226. }
  227. \caption[test]{Execution d'un processus sans redirection}
  228. \end{center}
  229. \end{figure}
  230.  
  231. \clearpage
  232.  
  233. \begin{figure}[!h]
  234. \begin{center}
  235. {
  236. \begin{pspicture}(0,-5.1)(12.8,5.1)
  237. \definecolor{color3357b}{rgb}{1.0,1.0,0.6}
  238. \definecolor{color2905b}{rgb}{0.8,1.0,1.0}
  239. \definecolor{color3232b}{rgb}{1.0,0.8,1.0}
  240. \definecolor{color3425b}{rgb}{1.0,0.6,0.6}
  241. \definecolor{color3478b}{rgb}{0.2,0.0,0.2}
  242. \psframe[linewidth=0.04,dimen=outer,fillstyle=solid,fillcolor=color3357b](8.64,-4.16)(6.24,-5.1)
  243. \psline[linewidth=0.12cm,arrowsize=0.05291667cm 3.0,arrowlength=1.4,arrowinset=0.4]{->}(3.24,4.04)(8.24,4.04)
  244. \psframe[linewidth=0.04,dimen=outer,fillstyle=solid,fillcolor=color2905b](3.36,4.9)(0.0,3.3)
  245. \rput(10.52,4.15){\includegraphics{terminal.eps}}
  246. \usefont{T1}{ptm}{m}{n}
  247. \rput(10.435469,2.81){Ecran}
  248. \usefont{T1}{ptm}{m}{n}
  249. \rput(1.8009375,4.35){Execution}
  250. \usefont{T1}{ptm}{m}{n}
  251. \rput(1.7278125,3.89){d'une commande}
  252. \usefont{T1}{ptm}{m}{n}
  253. \rput(6.5735936,4.39){Sortie classique}
  254. \usefont{T1}{ptm}{m}{n}
  255. \rput{-90.0}(5.024375,8.149375){\rput(6.580625,1.55){Redirection de sorties}}
  256. \psline[linewidth=0.04cm,linestyle=dashed,dash=0.16cm 0.16cm](3.84,-1.76)(7.44,-1.76)
  257. \psline[linewidth=0.06cm,linestyle=dashed,dash=0.16cm 0.16cm,arrowsize=0.05291667cm 3.0,arrowlength=1.4,arrowinset=0.4]{->}(3.84,-1.76)(3.84,-4.16)
  258. \psframe[linewidth=0.04,dimen=outer,fillstyle=solid,fillcolor=color3357b](5.04,-4.16)(2.64,-5.1)
  259. \usefont{T1}{ptm}{m}{n}
  260. \rput(3.9023438,-4.51){Autre}
  261. \psline[linewidth=0.06cm,linestyle=dashed,dash=0.16cm 0.16cm,arrowsize=0.05291667cm 3.0,arrowlength=1.4,arrowinset=0.4]{->}(7.44,-1.76)(7.44,-4.16)
  262. \usefont{T1}{ptm}{m}{n}
  263. \rput(2.5671875,-3.05){|, \&\& ou ||}
  264. \usefont{T1}{ptm}{m}{n}
  265. \rput(8.414532,-3.05){> ou >>}
  266. \usefont{T1}{ptm}{m}{n}
  267. \rput(7.583594,-4.65){Fichier}
  268. \usefont{T1}{pcr}{m}{n}
  269. \rput{-90.0}(4.5195312,7.5551567){\rput(5.942656,1.535){\footnotesize (STDERR et STDOUT)}}
  270. \psframe[linewidth=0.04,dimen=outer,fillstyle=solid,fillcolor=color3232b](2.64,-0.96)(0.8,-1.7)
  271. \usefont{T1}{ptm}{m}{n}
  272. \rput(1.7970313,-1.31){Fichier}
  273. \usefont{T1}{ptm}{m}{n}
  274. \rput(2.1345313,0.95){< }
  275. \usefont{T1}{ptm}{m}{n}
  276. \rput(3.81875,-4.85){commande}
  277. \usefont{T1}{ptm}{m}{n}
  278. \rput{-90.0}(-0.08453131,2.2404687){\rput(1.0717187,1.15){Redirection d'entrée}}
  279. \usefont{T1}{pcr}{m}{n}
  280. \rput{-90.0}(-0.3804688,1.8551562){\rput(0.64265627,1.135){\footnotesize (STDIN)}}
  281. \psline[linewidth=0.12cm,linestyle=dashed,dash=0.16cm 0.16cm,arrowsize=0.05291667cm 2.0,arrowlength=1.4,arrowinset=0.4]{->}(5.44,4.04)(5.44,-1.76)
  282. \psframe[linewidth=0.04,dimen=outer,fillstyle=solid,fillcolor=color3425b](12.42,0.66)(8.84,-1.16)
  283. \usefont{T1}{ptm}{m}{n}
  284. \rput(11.1953125,0.09){Optionnel}
  285. \usefont{T1}{ptm}{m}{n}
  286. \rput(11.242812,-0.65){Par défaut}
  287. \psline[linewidth=0.04cm,fillcolor=color3478b,linestyle=dashed,dash=0.16cm 0.16cm](9.24,0.08)(10.04,0.08)
  288. \psline[linewidth=0.04cm,fillcolor=color3478b](9.24,-0.68)(10.04,-0.68)
  289. \psline[linewidth=0.12cm,fillcolor=color3478b,linestyle=dashed,dash=0.16cm 0.16cm,arrowsize=0.05291667cm 2.0,arrowlength=1.4,arrowinset=0.4]{->}(1.64,-0.96)(1.64,3.24)
  290. \end{pspicture}
  291. }
  292. \caption[test4]{Redirection d'entrée/sorties}
  293. \end{center}
  294. \end{figure}
  295.  
  296. \clearpage
  297.  
  298. \subsection{Opérations entre les commandes}
  299.  
  300. Vous trouverez ci-dessous un schéma explicatif résumant l'idée derrière ce projet. Notez que ce schéma est une version provisoire de notre interface graphique et n'est absolument pas contractuel.
  301.  
  302.  
  303.  
  304.  
  305. \part{The internship}
  306.  
  307. \chapter{Priming}
  308. \section{Introduction}
  309. \thispagestyle{fancy}
  310. En quoi consiste cette partie.
  311.  
  312.  
  313. \chapter{The arrivals}
  314. \thispagestyle{fancy}
  315. Suite de l'histoire
  316. \section{Priming}
  317.  
  318. \chapter{Life on campus}
  319. \thispagestyle{fancy}
  320. Suite de l'explication
  321. \section{Activities}
  322.  
  323. \thispagestyle{fancy}
  324. En quoi consiste cette partie.
  325.  
  326.  
  327. \part{Conclusion}
  328. \ \\[3cm]
  329. \centering \Large Penser à modifier les compteurs
  330.  
  331.  
  332. \end{document}
Add Comment
Please, Sign In to add comment