Los bericht bekijken
  #1  
Oud 26 januari 2007, 15:00
fransbr's schermafbeelding
fransbr fransbr is offline
FBTV: Palm TV Gids
Voornaam: Frans
Model: Palm Treo 650
 
Geregistreerd: 22 oktober 2003
Locatie: Sleen
Berichten: 1.450
[Opinie] Is Palm OS multitasking of niet?

Keer op keer horen we (bijvoorbeeld in vergelijkingen met Windows Mobile) dat het Palm OS als nadeel heeft dat het niet multitasking is. Toch kunnen we mp3-tjes op de achtergrond luisteren en e-mail controleren zonder dat we ons e-mailprogramma open hebben. Hoe zit het nu werkelijk?

Rob Jonson (de ontwikkelaar van onder andere Butler, Initiate en Reset Doctor) doet op MyTreo.Net een en ander uit de doeken over achtergrondprocessen in het PalmOS. Een technisch verhaal, maar wel erg leerzaam.

Het eerste bewijs dat het PalmOS blijkbaar iets van multitasking in zich heeft is het feit dat geluid blijkbaar op de achtergrond afgespeeld kan worden (zoals TCPMP, Pockettunes en Aeroplayer doen) en dat de volumetoetsen dan ook nog werken. E-mailprogramma's als Chatter (bekend van imap push-mail) en Versamail en chatprogramma's als VeriChat en Chatopus checken op de achtergrond of er nieuwe e-mail is binnengekomen of dat iemand je een chatbericht wilt sturen.

Hoe deze multitasking eigenlijk werkt, is een erg technisch verhaal. Programma's kunnen door middel van een alarm aan PalmOS vragen om op een bepaalde tijd opgestart te worden. Dit alarm wordt bijvoorbeeld ook gebruikt wanneer je een wekker zet. De wekkerapplicatie (World Clock, 2PlayMe, etc.) wordt dan opgestart en laat een hard geluid horen. In plaats van een wekkerapplicatie kan bijvoorbeeld ook een e-mailapplicatie worden gestart. Deze controleert of er e-mail is, en zet tegelijkertijd een alarm voor een korte tijd later. Op de alarmtijd krijgt de e-mailapplicatie weer een signaal en hetzelfde ritueel speelt zich op die manier steeds opnieuw af. Wanneer er inderdaad e-mail is, kan de applicatie daar dan melding van geven. Tot die tijd heeft de e-mailapplicatie netjes op de achtergrond gedraaid.

Het tweede bewijs dat het PalmOS iets van multitasking heeft is aan te tonen door het feit dat inactieve programma's kunnen reageren op zogenaamde systeemgebeurtenissen of system events. Voorbeelden van system events zijn het drukken op een toets of het aanzetten van de pda. Rob Jonson noemt als voorbeeld van deze functionaliteit de Keyguard-functie in Butler. Keyguard wordt geactiveerd zodra je de Palm aanzet. Butler - of specifieker: de Keyguard-functie - reageert dan op het WakeUp Event. Een ander voorbeeld is MSMount, dat reageert op events die te maken hebben met het verwisselen van je geheugenkaartje.

Nog een voorbeeld van mijzelf: zoek in FBTV eens op "Journaal". Het resultaat is een lijst met programma's met daarin het woord "Journaal" en daarachter de datum. Zoek nu in bijvoorbeeld Datebook of Memopad nog eens "Journaal". Voila, hetzelfde lijstje! En dat zonder dat FBTV wordt opgestart! In werkelijkheid wordt FBTV weldegelijk opgestart op de achtergrond en wordt een stukje code geactiveerd dat de lijst teruggeeft aan de zoekfunctie. Niet echt multitasking, maar weldegelijk functionaliteit die draait "op de achtergrond".


Bron: Inside Your Treo: Notifications, Background Apps & Your Blazing Fast Treo! - Editorials
Bijgevoegde afbeelding(e)
Bestandstype: jpg 3594-g1kgty8wwww.jpg‎ (46,5 KB, 1x gelezen)
Met citaat reageren