La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Chief Technology & Security Officer Microsoft France

Présentations similaires


Présentation au sujet: "Chief Technology & Security Officer Microsoft France"— Transcription de la présentation:

1 Chief Technology & Security Officer Microsoft France
4/2/2017 4:35 PM Utiliser les sources du noyau de Windows pour l’enseignement et la recherche en système d’exploitation Bernard Ourghanlian Chief Technology & Security Officer Microsoft France © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

2 Sommaire Quelques sujet de réflexion à des fins d’enseignement
4/2/2017 4:35 PM Sommaire Introduction Windows Academic Program CRK Aperçu Démonstration WRK ProjectOZ Quelques sujet de réflexion à des fins d’enseignement © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

3 Partenariat avec l’enseignement supérieur et la recherche
4/2/2017 4:35 PM Partenariat avec l’enseignement supérieur et la recherche Nous pensons que les technologies de Microsoft peuvent avoir un rôle à jouer en matière d’enseignement en informatique Place des solutions de Microsoft sur le marché Innovation et recherche Fonctionnalités orientées vers l’utilisateur Nous savons que l’enseignement en informatique est important pour Microsoft Une source de capital humain et intellectuel dont l’industrie informatique ne peut se passer La qualité de l’enseignement détermine les compétences techniques et la culture de Nos clients Nos partenaires Nos collaborateurs © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

4 Une petite histoire du partage des sources chez Microsoft
WAP Partage sélectif Partage Public Partage collaboratif Programme Windows pour l’enseignement et la recherche (Windows Academic Program) © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

5 Les composantes du programme Windows pour l’enseignement et la recherche
Windows Operating Systems Internals Curriculum Resource Kit : Présentations, expériences, TP, questionnaires et sujets de TD pour introduire l’étude du cas du noyau de Windows dans un cours sur les systèmes d’exploitation CRK WRK ProjectOZ Windows Research Kernel : Les sources du cœur du noyau avec les binaires intégrés au sein d’un environnement permettant de construire et de tester des versions expérimentales du noyau pour les utiliser afin d’enseigner et de rechercher R E S E A R C H I N S T R U C T I O N ProjectOZ Le projet d’un environnement de système d’exploitation qui utilise les interfaces système natives de Windows pour fournir des abstractions simples et « propres » en mode user du CPU, de la MMU, des mécanismes de trap et de la mémoire physique qui puisse être utilisé pour réaliser des expériences sur les principes des OS

6 Curriculum Resource Kit
© 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

7 Les auteurs du CRK Industrie Université 4/2/2017 4:35 PM 7
Mark Russinovich est l’architecte en chef et le cofondateur de Winternals Software ( une société spécialisée dans la réalisation de logiciels avancés pour Windows. Mark est le co-auteur de Inside Windows 2000, 3ème édition (Microsoft Press) avec David Solomon et de son successeur, Windows Internals, 4ème édition (Microsoft Press). Mark est un Microsoft Most Valuable Professional (MVP) et un contributeur actif à Windows IT Pro magazine au sein de la chronique Windows Power Tools. C’est aussi un conférencier habituel de Microsoft Tech Ed, IT Forum, Windows IT Pro Magazine's Connections et Redmond Magazine's TechMentor. Mark est diplômé d’un B.S. de Carnegie Mellon University et d’un M.S. du Rensselaer Polytechnic Institute en computer engineering. Il est également titulaire d’un PhD (1994), de Carnegie Mellon University en computer engineering. Winternals Software a été racheté par Microsoft au mois de juillet derniet. Mark est maintenant Technical Fellow de Microsoft Andreas Polze est le professeur en système d’exploitation et en middleware au Hasso-Plattner-Institute for Software Engineering de l’université de Potsdam en Allemagne. Il a reçu son doctorat de l’université libre de Berlin en 1994 ainsi qu’une habilitation de l’université de Humboldt à Berlin en 2001, en computer science. Sa thèse d’habilitation porte sur Predictable Computing in Multicomputer-Systems. Ses sujets actuels de recherche portent sur l’interconnexion du middleware et les systèmes embarqués, la mobilité et la configuration adaptative des systèmes ainsi que la disponibilité des services de bout en bout au sein des plateformes middleware standard. A l’université de Potsdam, il enseigne l’architecture des systèmes d’exploitation, les middlewares basés composants ainsi que sur le calcul distribué prévisible. Le curriculum de formation de l’université inclus des cours sur les systèmes d’exploitation à partir de plateformes standard (Windows 2000/XP, Mac OS X (BSD Unix), et Solaris) ainsi que sur les systèmes embarqués (Windows CE, Linux embarqué). Le professeur Polze a été professeur invité au sein de la Dynamic Systems Unit du Software Engineering Institute, à l’université de Carnegie Mellon (Pittsburgh, USA), où il a travaillé sur les systèmes temps réel dans des environnement middleware standard (CORBA) ainsi qu’avec le Real-Time Systems Laboratory à l’université d’Urbana-Champaign en Illinois. David Solomon ( enseigne le fonctionnement interne de Windows aux développeurs et aux ingénieurs système dans le monde entier, y compris au sein de Microsoft. Il est le co-auteur de Windows Internals, 4ème édition, le livre « officiel » de Microsoft Press sur les internes du noyau de Windows, ainsi que la précédente édition, Inside Windows David écrivit aussi Inside Windows NT, 2ème édition et Windows NT for OpenVMS Professionals. Il a aussi co-créé la série de formations vidéo Windows Internals COMPLETE dont Microsoft a acheté les droits d’usage pour former ses collaborateurs. David a été conférencier à de nombreuses conférences TechEd et PDC. Il est récipiendaire du diplôme Microsoft Support Most Valuable Professional (MVP) en 1993 et 2005. 7 © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

8 4/2/2017 4:35 PM Le contenu du CRK Couvre toutes les unités de l’ACM/IEEE OS BOK (Body Of Knowledge) et plus encore (fondé sur Windows XP/Server 2003) Capable de couvrir plusieurs niveaux d’enseignement Modulaire (peut être utilisé dans sa totalité ou seulement en partie) Contient cas d’étude et comparaisons Les modules de base comprennent les éléments nécessaires pour être incorporés au sein d’un cours de base complet d’un semestre sur les systèmes d’exploitation. Les modules couvrent les éléments spécifiques de Windows dans le cours de base et les unités électives telles que définies dans le OS BOK of Computing Curricula 2001 Les modules avancés comprennent les éléments nécessaires pour être incorporés au sein d’un cours avancé d’un semestre sur les systèmes d’exploitation. Les modules couvrent les éléments spécifiques de Windows dans le cours de base et les unités électives telles que définies dans le OS BOK of Computing Curricula 2001 ainsi que 3 unités supplémentaires © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

9 Les sujets couverts a. Core topics OS1. Overview of operating systems
4/2/2017 4:35 PM Les sujets couverts a. Core topics OS1. Overview of operating systems OS2. Operating system principles OS3. Concurrency OS4. Scheduling and dispatch OS5. Memory management b. Elective topics OS6. Device management OS7. Security and protection OS8. File systems OS9. Real-time and embedded systems OS10. Fault tolerance OS11. System perf evaluation & troubleshooting OS12. Scripting c. Supplementary topics OS-A. Windows networking OS-B. Comparing the Linux and Windows Kernels OS-C. Windows – Unix Interoperability TP et exercices, plus références aux sources du WRK Disponible maintenant en 9 © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

10 Démonstration du CRK 10 4/2/2017 4:35 PM
© 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

11 Windows Research Kernel
© 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

12 4/2/2017 4:35 PM Les objectifs du WRK Permettre aux étudiants d’étudier les sources, de les modifier et de construire des projets Fournir un meilleur support pour la recherche et la production de publications fondées sur les « internes » de Windows Rendre plus facile aux étudiants et aux enseignants la comparaison entre Windows et d’autres systèmes d’exploitation Encourager la création d’ouvrages et de contenus de formation sur le noyau de Windows Simplifier les licences d’accès aux sources © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

13 Les sources du noyau de Windows
4/2/2017 4:35 PM Les sources du noyau de Windows Versions : Windows Server 2003 (x86/x64) SP1 et Windows XP x64 Processes, threads, LPC, VM, scheduler, object manager, I/O manager, synchronization, worker threads, kernel memory manager, … A peu près tout ce qui est dans NTOS sauf le plug-and-play, le power-management et du code spécialisé tel que driver verifier, splash screen, branding, timebomb, etc. Le code qui n’appartient pas au noyau (drivers, file systems, networking) provient du DDK et de l’IFSKIT Simplifié à quelques endroits, commentaires nettoyés, amélioration de l’orthographe Ce qui ne fait pas partir des sources est encapsulé dans une librairie binaire Outils de constructions et de paramétrages, utilitaires Outils pour tracer, surveiller les performances, journaliser, déboguer, etc. Packagé avec Un sous-ensemble du DDK et de la documentation pour travailler avec des drivers Les sources du système de fichiers de l’IFSKIT Le produit VirtualPC Les tests de régression du noyau La documentation des API Windows natives A peu près lignes de code source © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

14 La licence du WRK Objectifs Type de licence Critère d’éligibilité
4/2/2017 4:35 PM La licence du WRK Objectifs Faciliter l’acceptation des conditions de licence dans un environnement d’enseignement et de recherche Les étudiants et les élèves peuvent l’utiliser dans les classes et les laboratoires Type de licence Usage non commercial, usage pour l’enseignement ou la recherche seulement ; possibilité de créer des travaux dérivés pour des objectifs non commerciaux Critère d’éligibilité Disponible pour les facultés, les écoles et les étudiants et les élèves partout dans le monde Scenarios d’usage Visualiser, copier, reproduire et distribuer au sein de l’institution concernée Possibilité de modifier pour l’enseignement et l’expérimentation Permettre la production d’un contenu destiné à l’enseignement ou aux publications de recherche en autorisant l’inclusion de fragments de code source Peut être utilisé dans des ouvrages ou des publications académiques et au sein de forum communautaires Il faut simplement reprendre les termes du copyright Microsoft Partager les travaux dérivés au sein de la communauté académique 14 © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION. © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

15 Les premières 17 années de Windows
2/1989 Début du codage 7/1993 NT 3.1 9/1994 NT 3.5 5/1995 NT 3.51 7/1996 NT 4.0 12/1999 NT 5.0 Windows 2000 8/2001 NT 5.1 Windows XP 3/2003 NT 5.2 Server 2003 8/2004 NT 5.2 Windows XP SP2 4/2005 NT 5.2 Windows XP 64 Bit Edition (et WS03SP1) 2006 NT 6.0 Windows Vista (client) WRK 15 © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

16 Architecture générale de Windows
Applications Subsystem servers DLLs System Services Login/GINA Kernel32 Critical services User32/GDI ntdll/run-time library User-mode Kernel-mode Trap interface / LPC Security refmon I/O Manager Virtual memory Procs and threads Win32 GUI Net devices File filters Scheduler Filesys run-time Net protocols File systems Net Interfaces Volume mgrs Cache mgr Synchronization Device stacks Object Manager/Configuration Management (registry) Kernel run-time/Hardware Adaptation Layer © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

17 Aperçu de l’architecture
Sous-systèmes Processus système Services Applications POSIX Replicator Service Controller Alerter OS/2 WinLogon User Application RPC Win32 User Mode Session Manager Event Logger Subsystem DLLs System Threads NTDLL.DLL Kernel Mode Executive API I/O Manager PnP/Power Manager Processes & Threads Security Virtual Memory Cache Manager File systems Object management / Executive RTL Device drivers Kernel Hardware Abstraction Layer (HAL) Hardware interfaces (read/write port, timers, clocks, DMA, cache control, etc.) 17

18 Les fonctionnalités importantes du noyau de Windows
Hautement multithread Modèle d’E/S complètement asynchrone Ordonnancement basé sur les threads Gestionnaire d’objets (object-manager) qui founit une gestion unifiée des Structures de données du noyau Les références kernel Les références user (handles) Un espace de nommage La synchronisation des objets L’affectation des ressources La partage inter-processus Un moniteur de référence de sécurité centralisé et basé sur des ACL Une zone de stockage de la configuration découplée sur système de fichiers 18 © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

19 Les fonctionnalités importantes du noyau de Windows
Un modèle d’E/S extensible et basé sur des filtres, avec des drivers en couche, des modèles de périphériques standard, des notifications, des traces, une journalisation, un espace de nommage, des services et des sous-systèmes Un espace d’adressage virtuel géré séparément des objets mémoire Des fonctionnalités de gestion de mémoire virtuelle avancées (gestion par les applications des adresses virtuelles, mémoire physique, entrées – sorties, dirty bits, grandes pages) Plug-and-play, power-management Librairie système mappée au sein de chaque processus pour fournir des points d’entrée dignes de confiance © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

20 Documentation de la conception du noyau
Documentation de la conception de NT OS/2 : Core OS Fichier Titre Auteur (s) dwintro NT OS/2 Design Workbook Introduction Lou Perazzoli ke NT OS/2 Kernel Specification David N. Cutler, Bryan M. Willman alerts NT OS/2 Alerts Design Note David N. Cutler apc NT OS/2 APC Design Note ob NT OS/2 Object Management Specification Steven R. Wood proc NT OS/2 Process Structure Mark Lucovsky suspend NT OS/2 Suspend/Resume Design Note attproc NT OS/2 Attach Process Design Note vm NT OS/2 Virtual Memory Specification vmdesign NT OS/2 Memory Management Design Note io NT OS/2 I/O System Specification Darryl E. Havens irp NT OS/2 IRP Language Definition Gary D. Kimura namepipe NT OS/2 Named Pipe Specification David Cutler & Gary Kimura mailslot NT OS/2 Mailslot Specification Manny Weiser rsm Windows NT Session Management and Control fsdesign NT OS/2 File System Design Note fsrtl NT OS/2 File System Support Routines Specification © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

21 Documentation de la conception du noyau
Documentation de la conception de NT OS/2 : Core OS Fichier Titre Auteur(s) sem NT OS/2 Event – Semaphore Specification Lou Perazzoli argument NT OS/2 Argument Validation Specification David N. Cutler timer NT OS/2 Timer Specification coding NT OS/2 Coding Conventions Mark Lucovsky, Helen Custer ulibcode NT Utilities Coding Conventions David J. Gilman exceptn NT OS/2 Exception Handling Specification os2 OS/2 Emulation Subsystem Specification Steven R. Wood status NT OS/2 Status Code Specification Darryl E. Havens ntdesrtl NT OS/2 Subsystem Design Rational Mark H. Lucovsky resource NT OS/2 Shared Resource Specification Gary D. Kimura execsupp NT OS/2 Executive Support Routines Specification David Treadwell support NT OS/2 Interlocked Support Routines Specification dd Windows NT Driver Model Specification oplock NT OS/2 Opportunistic Locking Design Note Darryl Havens, et al memio NT OS/2 Memory Management Guide for I/O time NT OS/2 Time Conversion Specification mutant NT OS/2 Mutant Specification © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

22 Documentation de la conception du noyau
Documentation de la conception de NT OS/2 : Core OS Fichiers Titre Auteur(s) prefix NT OS/2 Prefix Table Specification Gary D. Kimura startup NT OS/2 System Startup Design Note Mark Lucovsky dbg NT OS/2 Debug Architecture coff NT OS/2 Linker/Librarian/Image Format Spec Michael J. O'Leary cache NT OS/2 Caching Design Note Tom Miller ntutil NT OS/2 Utility Design Specification Steven D. Rowe implan NT OS/2 Product Description and Implementation Plan David N. Cutler basecont NT OS Base Product Contents Lou Perazzoli © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

23 Les spécifications originelles de Windows NT/OS2
4/2/2017 4:35 PM Les spécifications originelles de Windows NT/OS2 © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

24 Organisation du WRK arb Plug-and-play arbiter lpc
Local inter-process calls cache Cache Manager mm Memory Manager config Registry nls Internationalization code dbgk User-mode debugging ob Object Manager ex Executive functions perf Performance Tracing fsrtl File system run-time po Power Management fstub File sys boot interface ps Process/thread inc Kernel-specific includes raw Raw volume driver init Boot code rtl Kernel run-time library io\iomgr I/O manager se Security Ref Monitor io\pnpmgr Plug-and-play manager vdm Virtual Dos Machine kd64 Kernel debug interface verifier Driver Verifier ke Kernel (scheduler, etc) wmi Windows Mgmt Interface © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

25 Les sources du noyau de Windows
4/2/2017 4:35 PM Les sources du noyau de Windows Organisation des sources Le répertoire public\ contient des fichiers include partagés par l’ensemble du système base\ntos\ contient les sources du noyau de Windows © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

26 Les sources du noyau de Windows
4/2/2017 4:35 PM Les sources du noyau de Windows cache\ cache manager config\ registry implementation dbgk\ user-mode debugger support ex\ executive functions (kernel heap, synchronization, time) fsrtl\ file system run-time support io\ I/O manager ke\ scheduler, CPU management, low-level synchronization lpc\ local procedure call implementation mm\ virtual memory manager ob\ kernel object manager ps\ process/thread support se\ security functions wmi\ Windows Management Instrumentation inc\ NTOS-only include files rtl\ kernel run-time support init\ kernel startup © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

27 Constuire le WRK Copy the WRK into a directory, say %wrk%.
4/2/2017 4:35 PM Constuire le WRK Copy the WRK into a directory, say %wrk%. set arch=x86 [or amd64] path %wrk%\tools\%arch%;%path% cd %wrk%\base\ntos nmake -nologo %arch%= will produce kernel files in BUILD\EXE\%arch% [wrkx86.* or wrkx64.*] copy the kernel to %SystemRoot%\system32\ if x86, find the Multi-processor version of hal.dll [see below] add a line to C:\boot.ini of the target system to boot this kernel and the MP hal [see below] reboot and select the boot option for the new kernel you will boot up on a kernel you built/linked yourself! [always keep the original boot.ini line and kernel/hal available so you can still boot your system if something fails with your WRK kernel modifications] set up a debugger [see below] © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

28 HAL Multi-processor hal (x86 only, amd64 hals are all MP)
4/2/2017 4:35 PM HAL Multi-processor hal (x86 only, amd64 hals are all MP) All hals are renamed hal.dll, so you have to use the link command to see what type of hal hal.dll really is: link -dump -all hal.dll | findstr pdb The MP hals have an 'm' in the native name of the hal, e.g. halmacpi.dll You may already have an MP hal installed on UP systems, due to hyperthreading. If the hal isn't MP, you need to find the MP hal that corresponds to the current hal the target system does have, i.e. halacpi.dll -> halacpim.dll ; ACPI PIC-based PC [used by VirtualPC] halaacpi.dll -> halmacpi.dll ; ACPI APIC-based PC halapic.dll -> halmps.dll ; MPS Look in the WRK WS03SP1HALS\x86 directory for the MP hal you need. © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

29 Boot.ini Edit boot.ini (you may have to use attrib -h -s -r first)
4/2/2017 4:35 PM Boot.ini Edit boot.ini (you may have to use attrib -h -s -r first) Copy the line for the first operating system listed to the end of the file and edit it. [boot loader] timeout=30 default=multi(0)disk(0)rdisk(0)partition(2)\WINDOWS [operating systems] multi(0)disk(0)rdisk(0)partition(2)\WINDOWS="Windows Server 2003, Standard" multi(0)disk(0)rdisk(0)partition(2)\WINDOWS="test" /kernel=wrkx86.exe /hal=halmacpi.dll Note that the filenames must be short (8.3) names. You can add additional options for debugging (as specified in the WinDbg/KD help). © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

30 Déboguage Les débogueurs WinDBG/KD fonctionnent avec le WRK
4/2/2017 4:35 PM Déboguage Les débogueurs WinDBG/KD fonctionnent avec le WRK La documentation est assez complète et comprend les informations nécessaires pour savoir comment déboguer à travers un port série, localement (en examinant les données du noyau depuis le mode user) ainsi que pour déboguer des noyaux à travers Virtual PC Les versions des débogueurs WinDBG/KD sont disponibles avec les Curriculum Resource Kit Tools Répertoire "CurriculumResourceKit-CRK\CRKTools\Debugging Tools“ La dernière version des Windows Debugging Tools peut être téléchargée depuis © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

31 Démonstration du WRK 4/2/2017 4:35 PM
© 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

32 En cours de développement
4/2/2017 4:35 PM ProjectOZ En cours de développement © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

33 ProjectOZ : un environnement expérimental pour les projets d’OS
4/2/2017 4:35 PM ProjectOZ : un environnement expérimental pour les projets d’OS Un environnement pour les projets OS utilisant NTAPI Fournit des abstractions simples en mode user CPU, MMU, mécanisme de trap et mémoire physique Supporte les expérimentations des principes des OS Utilise les vraies fonctionnalités de l’OS plutôt qu’un « jouet » de simulation Réduit la complexité nécessaire pour apprendre/construire des expériences Un environnement de développement simple, utilisant des outils standards pour construire, déboguer et instrumenter Encourage la réflexion active des étudiants Basé sur le projet SPACE UCSB (Probert et Bruno) 33 © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary. © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

34 ProjectOZ : un environnement expérimental pour les projets d’OS
4/2/2017 4:35 PM ProjectOZ : un environnement expérimental pour les projets d’OS Collaboration entre différents groupes au sein de Microsoft : MSR University Relations, Windows Kernel & Architecture Team et le Source Asset Team Le but est de fournir un meilleur support pour l’enseignement et la recherche en utilisant Windows Fournit une alternative à Nachos (Not Another Completely Heuristic Operating System - pour les TP et les projets de programmation de système d’exploitation Nachos est essentiellement un simulateur (comme XINU) Aujourd’hui, on ne dispose que de simulateurs ou de système d’exploitations Unix réduits comme Minix © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

35 ProjectOZ Windows Workloads, tests, instrumentation
Projets étudiants et expériences ProjectOZ Implémentation initiale de l’OS Petite quantité de code Les étudiants peuvent s’en inspirer pour faire mieux BasicOZ Abstraction par SPACE de CPU, MMU, Traps SPACE.exe API NT native Noyau Windows ProjectOZ s’exécute en mode user sur un système Windows standard Windows © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

36 BasicOZ Une implémentation très simple d’OS Objectifs
4/2/2017 4:35 PM BasicOZ Une implémentation très simple d’OS Fonctionnalités familières (processus, threads, user/kernel, mémoire virtuelle, périphériques, espaces de nommage) Implémentation minimale en utilisant des algorithmes très simples et fournissant des fonctionnalités minimales Un petit nombre de lignes de code (~2-3 k) Fondé sur les primitives de SPACE construites sur NTAPI Objectifs Les étudiants ont une quantité limitée de code à lire et à modifier Les abstractions sous-jacentes sont propres et simples BasicOZ peut sembler trop rudimentaire ; cela permet aux étudiants de donner libre court à leur inspiration 36 © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary. © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

37 Démonstration de ProjectOZ
4/2/2017 4:35 PM Démonstration de ProjectOZ © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

38 4/2/2017 4:35 PM Quelques sujets de réflexion à des fins d’enseignement sur les systèmes d’exploitation © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

39 Comparer et contraster Les environnements de conception des OS
UNIX (Années 70) NT (Années 80/90) ?? Années (2000/2010) Espace d’adressage 16 bits, swapping 32 bits, mémoire virtuelle linéaire 64-bit, ?? Perf. CPU KIPS MIPS GIPS Synchronisation IRQL Test&Set, Cmpr&Swap Transactional memory ? Taille mémoire KBytes MBytes GBytes Parallélisme hardware Aucun SMP Nombreux coeurs Stockage de masse KO, Déplacements lents MO, GO, pas de déplacements, TO Inf. Distribuée Bande Client/serveur Pair à Pair Les anciennes conceptions d’OS peuvent (bien sûr) être portés, mais Comment concevriez-vous un OS à partir d’une feuille blanche ? Comme l’architecture des CPU doit-elle évoluer? © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

40 Comparer et contraster Les environnements de conception de NTOS
Le thread est l’unité de parallélisme Mécanismes unifiés de synchronisation et de nommage Espace de nommage non enraciné dans le système de fichiers Gestion séparée des adresses virtuelles et des objets en mémoire Modèle d’E/S asynchrone et extensible (filtrage) Sécurité basée ACL, identité basée jetons Mécanisme de stockage de configuration intégré Librairie système mappée au sein de chaque processus © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

41 Les systèmes d’exploitation du futur ?
Architecture de sécurité, mécanismes et outils Modèles pour les applications afin de gérer les états et extensibilité du système Analyse de code en utilisant des outils comme le compilateur Phoenix Intégration des technologies managées et non managées Implémentation d’abstractions plus simple du noyau Services du noyau basés objet Services du noyau en mode kernel (drivers, extensions) Gestion des versions et des mises à jour pour la plateforme et les applications Gestion de la complexité Fédération du traitement distribué et des périphériques de stockage © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

42 Plus d’informations CRK Disponible en téléchargement ProjectOZ et WRK
4/2/2017 4:35 PM Plus d’informations CRK Disponible en téléchargement ProjectOZ et WRK Disponibles en téléchargement Feedback Contactez-nous en Plus d’information sur WAP et outils associés Site Web Shared Source Forums pour discussion Curriculum sur MSDNAA 42 © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary. © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

43 Votre potentiel, notre passion TM
4/2/2017 4:35 PM Votre potentiel, notre passion TM © 2007 Microsoft France © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.


Télécharger ppt "Chief Technology & Security Officer Microsoft France"

Présentations similaires


Annonces Google