diff --git a/cmp/20120203.tex b/cmp/20120203.tex index 72d13af..4b7d43c 100644 --- a/cmp/20120203.tex +++ b/cmp/20120203.tex @@ -79,8 +79,8 @@ sur fonction). certaine étape est réalisée. Plus on fait la liaison tôt, moins le code est flexible, mais plus c'est -efficasse, mais à l'inverse plus on le fait tard, plus c'est réalisé tard, plus -c'est flexible, mais c'est moins efficasse. +efficace, mais à l'inverse plus on le fait tard, plus c'est réalisé tard, plus +c'est flexible, mais c'est moins efficace. Un bon compromis serait sans doute Java ou C\# grâce à l'utilisation de machine virtuelle qui permet l'introspection ou la compilation à la volée. diff --git a/cmp/20120306.tex b/cmp/20120306.tex index 9f969bf..b9ff2e0 100644 --- a/cmp/20120306.tex +++ b/cmp/20120306.tex @@ -52,7 +52,7 @@ mémoire réservé au noyau.) Une activation désigne une simple instance d'une fonction. Toutes les variables locales sont libérés automatiquement, c'est plus -efficasse que de faire appel à \verb+malloc+. +efficace que de faire appel à \verb+malloc+. \subsubsection{Contenu} @@ -79,7 +79,7 @@ précédent. Lié aux exceptions en C++. -Quand on lève des exceptions, on balance des pointeurs, du coup, on risque +Quand on lève des exceptions, on balance des pointeurs, du coup, on risque de perdre cette mémoire.\\ Dans le nouveau standard, il est plutôt conseillé d'utiliser diff --git a/cmp/20120426-instructionselection.tex b/cmp/20120426-instructionselection.tex index 9125775..4c87720 100644 --- a/cmp/20120426-instructionselection.tex +++ b/cmp/20120426-instructionselection.tex @@ -18,7 +18,7 @@ partie est cachée (ou utilisé pour le passage d'arguments avec les fenêtres). On ne peut faire de l'arithmétique que sur des registres (pas directement en mémoire). -Les fonctions \verb+load+ et \verb+store+ sont relatives à un registres. +Les fonctions \verb+load+ et \verb+store+ sont relatives à un registre. Il y a peu d'instructions et elles ne font qu'une seule action à la fois, sans effet de bord. @@ -33,7 +33,7 @@ Le premier registre contient toujours la constante 0. Le registre 1 est réserv à l'assembleur et les registres 26 et 27 sont quant à eux réservés au système d'exploitation.\\ -Les derniers registres gérent le stack pointer (29), le frame pointer (30) et +Les derniers registres gèrent le stack pointer (29), le frame pointer (30) et l'adresse de retour (31).\\ Comme en Sparc et dans la norme Épita, il n'est possible de passer que 4 @@ -57,7 +57,7 @@ afin d'avoir une plus grande précision.\\ Les opérations logiques (\verb+and+, \verb+andi+, \verb+not+, \verb+rol+, \verb+sll+, \ldots) font les mêmes choses qu'en C, mais sur les mots binaires. -On a des instruction de comparaison~: \verb+seq+, \verb+sge+, \verb+sgt+, +On a des instructions de comparaison~: \verb+seq+, \verb+sge+, \verb+sgt+, \ldots\\ On a deux types de branchement inconditionnel (vers une étiquette ou une @@ -73,7 +73,7 @@ On a aussi des instructions de branchement conditionnel (\verb+bge+, \ldots). Il y a aussi des instructions qui permettent de contrôler le processeur (\verb+syscall+ qui permet de déclencher des appels système, \verb+rfe+ qui restaure le registre de statut, \verb+break+ qui déclenche une exception -particulière et bien sur \verb+nop+).\\ +particulière et bien sûr \verb+nop+).\\ On a plein d'instruction de chargement \verb+ld+, \verb+lw+, \verb+ulw+, \ldots mais bon, il y en a tellement qu'il y en a forcément une qui charge ce qu'on @@ -86,7 +86,7 @@ certaines instructions. Il utilise des registres particuliers qu'il faut penser à définir. Pareil pour les flags, il en utilise d'autres. Les instructions flottantes sont sur 32 ou 64 bits (\verb+.s+ single (32 bits) ou \verb+.d+ double (64 bits) à la fin des instructions et puis il y a \verb+.w+ quand on -utilise un mot utilisé pour les convertions (un mot c'est un entier par +utilise un mot utilisé pour les conversions (un mot c'est un entier par définition)).\\ On remarque qu'il n'y a donc pas beaucoup d'instructions :p @@ -130,4 +130,4 @@ case donnée). D'autres traductions sont possibles (avec plus d'opérations ou avec des instructions plus complexes). Le mieux étant d'avoir le moins d'instructions -couteuses. +coûteuses. diff --git a/sgdb/introduction.tex b/sgdb/introduction.tex index 84e3138..4e556d9 100644 --- a/sgdb/introduction.tex +++ b/sgdb/introduction.tex @@ -6,8 +6,7 @@ Une base de données, c'est collection de données qui reflète un aperçu du mo réel. Le SGBD c'est tout le système logiciel qui gére au moins une base de -données. Il peut être mono ou multi-utilisateur (plutôt multi). Il peut être -mono ou multi-utilisateur +données. Il peut être mono ou multi-utilisateur (plutôt multi). Les plus utilisés~: \begin{itemize} @@ -46,7 +45,7 @@ exécuté ou rien). le sont. \item \textbf{Simplicité~:} utilisation d'un langage non procédural. \item \textbf{Efficacité des accès aux données~:} temps de réponse proche - d'une application dédiées. Les débits globaux sont très bons maintenant. + d'une application dédiée. Les débits globaux sont très bons maintenant. \item \textbf{Partage et sécurité~:} multi-utilisateurs avec des droits très fins. Tout le monde ne peut pas faire des modifications ou lire toutes les données.\\ @@ -83,7 +82,7 @@ sert du système de fichiers du système). Mais les objectifs ne sont pas les mêmes, ce n'est pas le bon choix. La partie interne va gérer la communication, gestionnaire de verrou, -réwcupération en cas de panne, \ldots +récupération en cas de panne, \ldots La partie externe va faire l'interface avec les applications.\\ @@ -91,10 +90,10 @@ La partie externe va faire l'interface avec les applications.\\ On trouve 4 grands modules~: \begin{itemize} \item \textbf{L'évaluateur de requête~:} parse, planifie, évalue les - opérateurs, optimisation + opérateurs, optimisations. \item \textbf{Gestion de la concurence~:} gestionnaire des transaction et des - verrous - \item \textbf{Récupération en cas de panne} + verrous. + \item \textbf{Récupération en cas de panne.} \item \textbf{Gestion des données~:} gestionnaire de l'espace disque, du tampon, méthode d'accès et fichiers. \end{itemize} @@ -159,18 +158,18 @@ suit deux projets majeurs~: \end{itemize} Le succès du modèle relationnel tient dans l'implémentation multi-plateforme -car son concurent~: le modèle réseau qui ne fonctionnait que sur les mainframe +car son concurent~: le modèle réseau qui ne fonctionnait que sur les mainframes d'IBM exclusivement.\\ -De nombreux points de Ted Codd ont cependant été abandonnées~: le langage de +De nombreux points de Ted Codd ont cependant été abandonnés~: le langage de base (alpha) était très mathématique et peu adapté. Au final, la première norme de SQL est parrue en 86. \subsection{Modèle entité/association} Proposé par Peter Chen~: chaque enregistrement est une entitée qui sont reliées -entre-elles par des associations. Personne n'a implémentés ces idées, seul -l'outils de modélisation a été conservé. +entre-elles par des associations. Personne n'a implémenté ces idées, seul +l'outil de modélisation a été conservé. \subsection{Modèle R++, Relationel++} @@ -190,7 +189,7 @@ implémenter de la gestion objet. Reprise des idées du modèle sémantique. Implémentée par une société française (O2) par François Bancilhon. Il crée un langage déclaratif OQL. -La compta de l'école est toujours gérée sous Orion \o/ +La compta de l'école est toujours gérée sous Orion \textbackslash{}o/ Le problème de la boîte fut qu'elle soit française~! diff --git a/sgdb/modelisation.tex b/sgdb/modelisation.tex index eb0d9f7..926f75d 100644 --- a/sgdb/modelisation.tex +++ b/sgdb/modelisation.tex @@ -5,7 +5,7 @@ \begin{itemize} \item Fournir des outils pour créer la base de données~: analyse des données et de leurs relations en s'affranchissant des traitements. - \item Décrire la réalité, ni trop (problémes futur avec les traitements), ni + \item Décrire la réalité, ni trop (problémes futurs avec les traitements), ni trop peu (ne pas être capable de représenter un cas réel). \end{itemize} @@ -15,8 +15,8 @@ On commence par étudier les besoins de l'application~: on extrait les besoins fonctionnels (qui donneront lieu à l'analyse fonctionnelle qui défini les -définis de haut niveau) et les besoins en données (qui donnera lieu à la -conception d'un shéma conceptuel). +fonctions de haut niveau) et les besoins en données (qui donnera lieu à la +conception d'un schéma conceptuel). Ensuite, on passe à l'implémentation réelle. @@ -52,7 +52,5 @@ Elle peut avoir ses propres attributs. \paragraph{Cardinalité} Nombre minimum et le nombre maximum de participations de chaque occurence d'entité à une association. -\paragraph{Agrégation} Une agrégation est utilisée quanf on veut faire +\paragraph{Agrégation} Une agrégation est utilisée quand on veut faire participer une association dans une autre. - -Je crois qu'il y a un truc à faire pour la prochaine fois ... :D