16
Microsoft Windows Microsoft Windows “Longhorn” “Longhorn” future version of Windows OS future version of Windows OS Jan “Honza” Stoklasa Jan “Honza” Stoklasa ja ja nstok nstok at at microsoft microsoft dot dot com com Academic Program Manager Academic Program Manager Microsoft Czech Microsoft Czech

Microsoft Windows “Longhorn” future version of Windows OS Jan “Honza” Stoklasa janstok at microsoft dot com janstok at microsoft dot com Academic Program

Embed Size (px)

Citation preview

Page 1: Microsoft Windows “Longhorn” future version of Windows OS Jan “Honza” Stoklasa janstok at microsoft dot com janstok at microsoft dot com Academic Program

Microsoft Windows “Longhorn”Microsoft Windows “Longhorn”future version of Windows OSfuture version of Windows OS

Jan “Honza” StoklasaJan “Honza” Stoklasajajanstoknstok atat microsoftmicrosoft dotdot comcom

Academic Program ManagerAcademic Program ManagerMicrosoft CzechMicrosoft Czech

Page 2: Microsoft Windows “Longhorn” future version of Windows OS Jan “Honza” Stoklasa janstok at microsoft dot com janstok at microsoft dot com Academic Program

Microsoft Windows “Longhorn”Microsoft Windows “Longhorn” LAPI (Longhorn API)LAPI (Longhorn API)

object oriented APIobject oriented API neXt step neXt step of Microsoft of Microsoft

AvalonAvalon user interface classesuser interface classes using 3D power of video cardusing 3D power of video card XAML – XML based UI languageXAML – XML based UI language

WinFSWinFS relational and transactional filesystemrelational and transactional filesystem

IndigoIndigo messaging framework messaging framework based on XML Web Services standardsbased on XML Web Services standards

Page 3: Microsoft Windows “Longhorn” future version of Windows OS Jan “Honza” Stoklasa janstok at microsoft dot com janstok at microsoft dot com Academic Program

LAPILAPI LAPI (Longhorn API)LAPI (Longhorn API)

huge set of OS level classeshuge set of OS level classes UI, filesystem, communication, multimediaUI, filesystem, communication, multimedia

based on .NET Framework based on .NET Framework managed execution environmentmanaged execution environment virtual machine analogyvirtual machine analogy

LAPI classes can be instantiated by LAPI classes can be instantiated by programs written in C#, C++, J#, VB.NET…programs written in C#, C++, J#, VB.NET… or any language having .NET compileror any language having .NET compiler

Pascal, Python, Haskell… Pascal, Python, Haskell…

low-level stuff (drivers) still runs as low-level stuff (drivers) still runs as native codenative code

Page 4: Microsoft Windows “Longhorn” future version of Windows OS Jan “Honza” Stoklasa janstok at microsoft dot com janstok at microsoft dot com Academic Program

LAPILAPI managed execution environmentmanaged execution environment

applications are restricted based on its applications are restricted based on its originorigin

configurable sandboxconfigurable sandbox C:\Program Files\MyAccounting.exeC:\Program Files\MyAccounting.exe

application coming from local system has full application coming from local system has full access to computer resourcesaccess to computer resources

http://www.suspicious.com/MaybeIAmTrojan.exehttp://www.suspicious.com/MaybeIAmTrojan.exe no access to sensitive resourcesno access to sensitive resources no more modem dialers… no more modem dialers…

Page 5: Microsoft Windows “Longhorn” future version of Windows OS Jan “Honza” Stoklasa janstok at microsoft dot com janstok at microsoft dot com Academic Program

DemoDemo

Hello LonghornHello Longhorn

Page 6: Microsoft Windows “Longhorn” future version of Windows OS Jan “Honza” Stoklasa janstok at microsoft dot com janstok at microsoft dot com Academic Program

AvalonAvalon user interface classesuser interface classes

explicitly instantiated by C# codeexplicitly instantiated by C# code ……or declaratively by XAMLor declaratively by XAML

XAMLXAML XML based language defining UIXML based language defining UI tree of UI elements <-> XML documenttree of UI elements <-> XML document XAML is compiled to ILXAML is compiled to IL

no runtime speed penaltyno runtime speed penalty

Interesting scenario: user interface Interesting scenario: user interface generated on-the fly from datagenerated on-the fly from data

Page 7: Microsoft Windows “Longhorn” future version of Windows OS Jan “Honza” Stoklasa janstok at microsoft dot com janstok at microsoft dot com Academic Program

AvalonAvalon <Canvas><Canvas>

drawable surfacedrawable surface <Rectangle>, <Ellipse><Rectangle>, <Ellipse> geometric transformationsgeometric transformations

<DockPanel><DockPanel> docking layoutdocking layout

<FlowPanel><FlowPanel> similar to HTML layoutsimilar to HTML layout

<TextPanel><TextPanel> formatted textformatted text

<GridPanel><GridPanel> tabular layouttabular layout

<Fixed Panel><Fixed Panel> numeric coordinates layoutnumeric coordinates layout

Page 8: Microsoft Windows “Longhorn” future version of Windows OS Jan “Honza” Stoklasa janstok at microsoft dot com janstok at microsoft dot com Academic Program

AvalonAvalon opacity, compositionopacity, composition gradientsgradients

<LinearGradientBrush><LinearGradientBrush>

geometric transformationsgeometric transformations <RotateTransform><RotateTransform> <ScaleTransform><ScaleTransform>

animationsanimations almost any property can be animatedalmost any property can be animated

3D objects are not part of my Longhorn build3D objects are not part of my Longhorn build

Page 9: Microsoft Windows “Longhorn” future version of Windows OS Jan “Honza” Stoklasa janstok at microsoft dot com janstok at microsoft dot com Academic Program

DemoDemo

Avalon sample applicationsAvalon sample applications

Page 10: Microsoft Windows “Longhorn” future version of Windows OS Jan “Honza” Stoklasa janstok at microsoft dot com janstok at microsoft dot com Academic Program

WinFSWinFS relational and transactional filesystemrelational and transactional filesystem

folder-file relationshipfolder-file relationship fixed by filesystemfixed by filesystem

logical relationshipslogical relationships enabled by WinFSenabled by WinFS

SQL queriesSQL queries filesystem stores typed objectsfilesystem stores typed objects

not just bytesnot just bytes

Page 11: Microsoft Windows “Longhorn” future version of Windows OS Jan “Honza” Stoklasa janstok at microsoft dot com janstok at microsoft dot com Academic Program

WinFSWinFS frequently used types are already frequently used types are already

defineddefined Person, Email, PicturePerson, Email, Picture now: every program has its own address now: every program has its own address

bookbook Longhorn: central address bookLonghorn: central address book

transactionstransactions BeginTransactionBeginTransaction CommitTransactionCommitTransaction AbortTransactionAbortTransaction

Page 12: Microsoft Windows “Longhorn” future version of Windows OS Jan “Honza” Stoklasa janstok at microsoft dot com janstok at microsoft dot com Academic Program

WinFSWinFS notificationsnotifications

programmer gets notified when set of data programmer gets notified when set of data changeschanges new file in directorynew file in directory new person in address booknew person in address book

support from underlying SQL enginesupport from underlying SQL engine

Page 13: Microsoft Windows “Longhorn” future version of Windows OS Jan “Honza” Stoklasa janstok at microsoft dot com janstok at microsoft dot com Academic Program

DemoDemo

WinFSWinFS

Page 14: Microsoft Windows “Longhorn” future version of Windows OS Jan “Honza” Stoklasa janstok at microsoft dot com janstok at microsoft dot com Academic Program

IndigoIndigo flexible messaging framework flexible messaging framework based on XML Web Services standardsbased on XML Web Services standards

XML RPCXML RPC XML message passingXML message passing remote object activationremote object activation object poolingobject pooling

Page 15: Microsoft Windows “Longhorn” future version of Windows OS Jan “Honza” Stoklasa janstok at microsoft dot com janstok at microsoft dot com Academic Program

DemoDemo

IndigoIndigo

Page 16: Microsoft Windows “Longhorn” future version of Windows OS Jan “Honza” Stoklasa janstok at microsoft dot com janstok at microsoft dot com Academic Program

MSDN AA MSDN AA current and coming Windows and .NET current and coming Windows and .NET

software easily available to academia software easily available to academia Visual Studio .NET and Windows XP for Visual Studio .NET and Windows XP for

whole computer science department whole computer science department and its students and its students and Longhorn beta once this comes outand Longhorn beta once this comes out

jjanstokanstok atat microsoftmicrosoft dotdot comcom for details for details