Programowanie dla Europejczyków

Systemy wbudowane

W Barcelonie zaprezentowano dwa systemy operacyjne typu embedded, przeznaczone głównie dla urządzeń przenośnych: Windows CE i Windows XP Embedded.

Ten drugi to podzielona na ponad 9500 komponentów wersja Windows XP Professional. Wymaga, by platforma sprzętowa była zgodna z ogólną architekturą PC. Użytkownik może zgodnie z własnymi potrzebami złożyć system operacyjny - dostępny jest nawet specjalny moduł Target Analyzer Probe, który analizuje platformę i określa minimalny zestaw komponentów niezbędny do obsługi danego sprzętu. Specjalne narzędzia pomagają rozwiązywać skomplikowane zależności w obrębie definiowanego systemu XP, tak by pogodzić wymagania sprzętu, aplikacji i wewnętrzne związki między modułami XP. System XP Embedded w przeciwieństwie do Windows CE jest dostępny w wersji polskiej.

Windows CE jest systemem czasu rzeczywistego, który działa na wielu różnych platformach i urządzeniach. Można go wykorzystać albo jako "pełny" system typu embedded, albo jako predefiniowaną platformę do określonych celów. Obecnie są zdefiniowane następujące specyfikacje: Pocket PC 2002, Auto PC, WBT - każda z nich określa pewne cechy sprzętu i przybliżoną listę modułów, które muszą być zainstalowane. Co jednak najważniejsze, nowa wersja Platform Builder dla Windows CE może tworzyć zestaw narzędzi SDK posiadający tylko tę funkcjonalność, którą mogą zrealizować wybrane moduły. W ten sposób od razu widać, z jakich API można skorzystać na danym urządzeniu. Podstawową różnicą między Windows XP a CE jest fakt, że w XP mamy dostępne pełne API Win32, a API CE zależy od wybranych modułów. Kod źródłowy Windows CE 3.0 jest dostępny za darmo.

Na konferencji zaprezentowano także Kernel Independend Transport Layer - warstwę pośrednią, która pozwala dołączać debugger do urządzenia przenośnego. Obecnie ta sama platforma może być wykorzystywana zarówno jako narzędzie do śledzenia błędów, jak i platforma użytkowa - nie są potrzebne oddzielne instalacje sprzętowe. KITL pozwala także przy minimalnym wpływie na kernel śledzić na bieżąco funkcjonowanie urządzenia - wątki, procesy, zawartość pamięci itp.

Podczas TechEd omówiono nową wersję SQL CE 2.0, który może być nie tylko lokalnym motorem bazy danych działającym na urządzeniu przenośnym i poprzez replikację synchronizującym dane z dużym serwerem. Dostępny jest sterownik OLE DB, pozwalający na bezpośrednią komunikację urządzenia przenośnego z serwerem, tak jak ma to miejsce w tradycyjnych aplikacjach klient/serwer.

Wiele sesji poświęcono też praktycznemu zastosowaniu Mobile Internet Toolkit. To pakiet ASP.Net, który pozwala uprościć pisanie stron WWW dla różnego typu urządzeń przenośnych (z niestandardowymi przeglądarkami). Prezentowano m.in. techniki rozszerzania MIT o własne kontrolki.

W przygotowaniu jest pakiet Windows .Net Server Appliances Kit 3.0, przeznaczony dla serwerów typu blade.

.Net Server

Na konferencji byli obecni przedstawiciele Wininternals, którzy zaprezentowali głównie zmiany zachodzące między Windows 2000 a XP/.Net Server. Mimo że bazowa architektura kernela nie przeszła rewolucyjnych zmian, system zyskał kilka ciekawych funkcji, takich jak możliwość przeplatania operacji wykonywanych przez sterownik z operacjami I/O czy eliminacja większości blokad nakładanych na struktury systemowe podczas operacji kernela (blokady typu spinlocks są zastępowane nowymi typu pushlocks), co zwiększy możliwość równoległego wykonywania operacji w architekturze SMP, a tym samym skalowalność bazowych operacji systemu.

W 64-bitowym Windows będzie dostępny niemal oddzielny podsystem "Windows on Windows", który pozwoli uruchamiać aplikacje 32-bitowe. Podobnie była zaimplementowana warstwa systemu 16-bitowego, jednak w przypadku architektury 64-bitowej prawdopodobnie nie będzie możliwe wzajemne wywoływanie kodu (tzw. thunk layer) między programami 64- i 32-bitowymi.

MS Agent - szansa na nowy typ interakcji?

Na konferencji były poruszane tematy związane z nowym typem interfejsu. Przy tej okazji pokazano wykorzystanie modułu MS Agent do "interaktywnej" rozmowy z użytkownikiem.

MS Agent to moduł, który odpowiada za asystenta znanego z MS Office. Można go bardzo ciekawie oprogramować, np. może on adaptacyjnie reagować na operacje wykonywane przez użytkownika, służyć za prawdziwego nauczyciela. Agent może dynamicznie dobierać język i słownictwo, jakim "mówi" do użytkownika. Głos można oprogramować przy użyciu fonemów, co nawet w przypadku braku motoru Speech API dla danego języka pozwala wypowiedzieć określone kwestie. Agent Character Editor i Poser pozwalają szybko utworzyć własnych "agentów".

Jubileuszowa konferencja TechEd odbędzie się również w Barcelonie.

W przerwie między sesjami

Szkolenia nie były jedyną atrakcją TechEdu. W Barcelonie można było przetestować konsolę XBox (czytaj pograć). Nie obyło się jednak bez sesji poświęconej oprogramowaniu tego urządzenia. Omawiano możliwości tej platformy, a także pakiet dla programistów XDK, który zawiera wszystko co niezbędne, by zacząć pisać dla XBox.

API tego urządzenia jest bardzo podobne do Win32, ale nie jest z nim w pełni zgodne. XBox obsługuje DirectX 8 i oferuje dodatkowe specjalistyczne rozszerzenia tego pakietu. By pisać dla XBox, programista posługuje się IDE Visual C++. Dla developerów dostępne są liczne programy partnerskie - firmy o ustalonej pozycji rynkowej mogą wykupić XDK i pomoc techniczną, a te firmy, które dopiero zaczynają na rynku, lecz mają już dobry pomysł na grę pod pewnymi warunkami otrzymują większość elementów za darmo.

Niestety, nie jest jeszcze dostępny emulator na PC tej konsoli.


TOP 200