Session-03-Windows-Academic-Program

advertisement
Arkady Retik, DSc
Director, Technical Faculty WW Programs, Education Group
Microsoft, Redmond, USA
Content
Overview of selected programs of interest
• Source & Technology Programs

Windows Academic Program
• Education Group Programs
 Faculty
 Students
Not covering:
•
MS Research and Government/Institutional programs
Source Programs and Initiatives
Over 150 projects available
More than 2,000,000 developers have accessed source programs
90% of programs allow modifications and distribution rights
WTL
WAP
CodePlex
Shared Source Initiative (SSI)
A framework for making Microsoft source code more broadly available
www.microsoft.com/sharedsource
Source Code for:
• Faculty & Students
• Governments
• Enterprises
• OEMs
• MVPs
• System Integrators
• Developers
CodePlex
Open source project hosting web site
ASP.Net web application based on Visual Studio Team Foundation Server
Over 5000 projects /over 100K active users
www.codeplex.com
Windows Academic Program
Integrates core Windows technologies into teaching and research
www.microsoft.com/WindowsAcademic
Overview: Windows Academic Program Components
Windows Operating
Systems Internals
Curriculum Resource
Kit (CRK) presentation slides,
experiments, labs,
quizzes and
assignments for
introducing case
studies from the
Windows kernel
into operating
system courses.
CRK
WRK
ProjectOZ
Windows Research
Kernel (WRK) – the core
kernel sources and
binaries integrated with
an environment for
building and testing
experimental
versions of the
Windows kernel
for use in teaching
and research; NT
design Workbook
containing over 40
specs; 7 Projects.
ProjectOZ - an operating
systems project
environment that uses the native kernel interfaces of Windows to provide simple,
clean, user-mode abstractions of the CPU, MMU, trap mechanism, and physical
memory that can be used to perform experiments in operating systems
principles.
Pilot version
WAP new resources - 2010 release
DVD: Instructor & Student Editions v 1.3
focus – WRK Projects & Windows 7 update
CRK (Curriculum Resource Kit)
CRK (Curriculum Resource Kit)
Based on Windows Internals 4th Edition
• by M. Russinovich & D. Solomon
• with Prof. Andreas Polze, HPI, Germany
Covers all ACM/IEEE-CS OS BOK units and more
• Modular (can be used in whole / in part)
• Case studies / compare & contrast
• References to source code
About 100 hours of teaching and learning material
There are basic and advanced modules for each unit
• most suitable to be used in lectures
• integrating in existing presentations (undergraduate)
• Windows based course (elective, postgraduate )
• rich set of demo based labs and tools
CRK Units
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
Most units contain:
Labs & Exercises,
Quizzes,
Programming
Assignments,
References to
Source Code
c. Supplementary topics
OS-A. Windows networking
OS-B. Comparing the Linux and Windows Kernels
OS-C. Windows – Unix Interoperability
d. Instructor Supplement - solutions to Quizzes, Programming
Assignments, Windows Internals book (pdf). Only available to faculty on
your DVD or from Faculty Connection portal.
Applications
Subsystem
servers
DLLs
System Services
Kernel32
Critical services
Login/GINA
User32 / GDI
User-mode
ntdll / run-time library
Kernel-mode
Trap interface / LPC
Security refmon
I/O Manager
Virtual memory Procs & threads
Win32 GUI
Net devices
File filters
Scheduler
Filesys run-time
Net protocols File systems
Net Interfaces Volume mgrs
Synchronization
Cache mgr
Device stacks
Object Manager / Configuration Management (registry)
WRK
Kernel run-time / Hardware Abstraction Layer
WRK is based on Windows Server 2003 SP1 / Windows x64 NTOS:
 Over 800K lines of kernel source
 Simplified a little, cleaned up comments, improved spelling
 Original specs & design docs for NT
Source Code Organization
NT Original Specifications
WRK is most suitable for
• Programming labs
• modify/build for teaching and experimentation
• programming projects (i.e. fair-share scheduling)
• Study source code (especially if using CRK for teaching)
• Study specs (i.e. Software Engineering)
• Final year projects / capstone projects
• PhD and academic research
• Compare and contrast Windows to other operating systems
• “Tale of Four Kernels”
WRK use
See full paper in
ISCE’08, 10-18, May 2008
WAP resources 2009: main additions
Web based UI
New Content
Virtual PC 2007
Windows server VHD
Visual Studio Solution
Sample Projects
Updated WRK License
Inside Windows Videos
Research References
New Sample Projects
 Experiment Environment Set Up, UoPostTelecomm
 Getting started with WRK, Univ. of Virginia, USA
 Easy Pager, Hasso-Platner Institute, Germany
 Fair Share Scheduler, University of Virginia, USA
 Inter-Process Communication (IPC), NanKai U, China
 Processor Scheduling, Tsinghua University, China
 Working Set, Beihang University, China
 Video Project for WRK student labs, POSTECH, Korea
Three videos (and documents) developed at POSTECH:
(1) Getting started; (2) Deadlock detection; (3) Random stack
More project coming soon!!!
Additional Resources and References
Inside Windows videos
• 12 hour Windows OS internals video by David Solomon and
Mark Russinovich, authors of Windows Internals 4th edition.
Singularity Project
• MSR Project, now released on CodePlex under OSS license
• Singularity Project Articles – pointers and references
Kernel changes In Vista and Windows 7
• PPT presentations
• TechReady talk by Mark Russinovich
CRK summary of use
• most popular MS Academic curriculum resource so far
• mostly used in lectures
• integrating in existing presentations (undergraduate)
• Windows based course (elective, postgraduate )
• useful for self-study
• final year projects
• research/PhD
• rich lab resources (tutorials, utilities and tools)
WRK summary of use
Programming labs
• modify/build for teaching and experimentation
• programming projects (i.e. fair-share scheduling)
Study source code (especially if using CRK for teaching)
• final year projects / capstone projects
PhD research
Compare and Contrast
Textbooks and books
Faculty Experiences
Curriculum Resource Kit
CRK OS Units
 Meta-curriculum: CRK Description, Syllabi, Lab-Setup, Glossary
 15 Units: PPTs with notes, Labs, Assignments, Quizzes, Demos
CRK Instructor Supplement
 Windows Internals Book 4th Edition
 Solutions: Assignments, Labs, Exercises, Quizzes
CRK Tools
 70 SysInternals and ResKit Tools with Help and Documentation
Windows Research Kernel
 Source Code, Build tools, WinDbg with Help, Documentation
 42 NTOS Specifications
 Virtual PC, Server 2003 VHD image, Tools, Documentation
 Seven Programming Projects with docs, student labs and manuals
ProjectOZ - source code, docs - pilot version
References and Related Materials
 Inside Windows videos (12 hour course) by Solomon/Russinovich
 Singularity MSR project papers and pointers
 Support and Reference pointers
Summary and WAP Contact Information
CRK
• Available for free download from Faculty Connection Portal
www.facultyresourcecenter.com/curriculum/pfv.aspx?ID=6191
ProjectOZ (pilot)
• Available for free download from Faculty Connection Portal
www.facultyresourcecenter.com/curriculum/pfv.aspx?ID=6547
WRK – faculty only, password protected access
• Individual faculty can access the WRK via Faculty Connection Portal
www.microsoft.com/education/facultyconnection/
Feedback
• Contact us at compsci@microsoft.com
More information on WAP and related topics
www.microsoft.com/WindowsAcademic
• Forums for discussion and access to Windows kernel & arch team
http://forums.microsoft.com/WindowsAcademic
Faculty Connection
1. Providing resources, training, and software tools direct to faculty
www.microsoft.com/faculty
Tech Faculty Network
• > 50K registered users
• Monthly Newsletter
• Articles, events, info
• 20 Regional sites
• MS Research feeds
Repository of Resources
• 3K curriculum objects
• Software tools
• Resource kits
• Training materials
• Presentation videos
28
Faculty Connection – cont.
2. Facilitating development and sharing curriculum resources
Coming soon
Cloud curricula
• Intro course
• Software Eng-g course
• MS Azure
• Conference videos
http://research.microsoft.com/cloudfutures2010
Security curriculum
• Critical Infrastructure
Protection
• Secure Development
www.microsoft.com/twc
www.microsoft.com/security
www.microsoft.com/sdl
• SDL tools
• End to End solution
29
MSDN Academic Alliance (MSDNAA)
Providing software to students & faculty for teaching & research
www.msdnaa.com
DreamSpark
DreamSpark equips students with the professional software tools
www.dreamspark.com
Imagine Cup
5 Competitions: Software Design, Game Design, Digital Media,
IT Challenge, Embedded Design…. One theme:
“Imagine a world where technology solves the toughest problems”
www.ImagineCup.com
•314,000 participants
•116 Countries
•Creates Entrepreneurs
•All for Social Cause
•Change the World
32
Students to Business
It is about jobs
www.microsoft.com/S2B
Download