You Are Here:

Community: Blogs

David Caabeiro's Forum Nokia Blog

WDF / 3GSM (P.I.P.S.)

PushL | 13 February, 2007 19:16

Among the several talks in the Symbian WDF, I was quite interested in the one on PIPS. The presentation (by Erik Jacobson from Symbian) turned out to be pretty interesting and enlightening. Having worked in some porting projects in the past, and suffering many of the shortcomings of the estlib (now soon to be deprecated), there seems to be at last some good news for future porting developing.

Here're some highlights:

- select() is supported: this single addition makes the whole project worth to me :)
- exec() / fork() are not supported, as they would require many changes in the kernel (use posix_spawn() instead)
- Many IPC mechanisms supported: pipes, fifos, etc.
- Signals and thus asynchronous I/O is not supported
- dlsym() cannot be used with symbolic names, use ordinals instead (there could be some facility provided in the future though, to ease development)
- Carbide.c++ v1.2 is intended to support PIPS development (v9.3+ will introduce new target types: STDEXE & STDDLL). Anyway you can always rely on the good old command line.

PIPS was originally intended for v9.3, but given that most functionality works in v9.1, there will be a sis available to that OS version.
To prove its effectiveness, an independent company ported the TightVNC client for both S60 and UIQ.

To start to get a feeling out of it, I'd recommend you keep an eye on the P.I.P.S. Home @ DevNet , starting with the freely downloadable booklet.


WDF PIPS

 
 

Rate This

 
 
Bookmark this page: DeliciousDiggFacebookGoogleYahooStumbleUponRedditDiigoTechnocratiTwitter  Share this page Share this page Print this Page Print this page Invite a friend Invite a friend
京ICP备05048969号    Email Newsletters Press Terms & Conditions Privacy Policy Sitemap Contact Us © 2009 Nokia 
RDF Facets: qdcZidentifierQSxhttpE3aE2fE2fblogsE2eforumE2enokiaE2ecomE2fblogE2fpaulE2dcoultonsE2dforumE2dnokiaE2dblogE2farchivesE2f2009E2f04E2fX qdcZtypeQUqfnZE45E78cludedFromGeneralE4cistingsQ qdcZtypeQUqfntypeZBlogContentQ qdcZtypeQUqfntypeZCommunityContentQ qdcZtypeQUqfntypeZE52esourceQ qdcZtypeQUqfntypeZWebpageQ qdcZtypeQUqmarsZManagedE52esourceQ qdcZtypeQUqwebZInformationE52esourceQ qdcZtypeQUqwebZPageQ qdcZtypeQUqwebZE52esourceQ qdcZtypeQUqrdfsZE52esourceQ qfnZtypeQUqfntypeZBlogContentQ qfnZtypeQUqfntypeZCommunityContentQ qfnZtypeQUqfntypeZE52esourceQ qfnZtypeQUqfntypeZWebpageQ qmarsZlanguageQUxhttpE3aE2fE2fswE2enokiaE2ecomE2flanguageE2d1E2fenX qrdfZtypeQUqfnZE45E78cludedFromGeneralE4cistingsQ qrdfZtypeQUqfntypeZBlogContentQ qrdfZtypeQUqfntypeZCommunityContentQ qrdfZtypeQUqfntypeZE52esourceQ qrdfZtypeQUqfntypeZWebpageQ qrdfZtypeQUqmarsZManagedE52esourceQ qrdfZtypeQUqwebZInformationE52esourceQ qrdfZtypeQUqwebZPageQ qrdfZtypeQUqwebZE52esourceQ qrdfZtypeQUqrdfsZE52esourceQ