Main Page
From PortaWiki
Contents |
PortaWiki
A Wiki for the collecting, sharing and collaboration on portability issues that arise during software development and porting. There are entry points per topic and per platform. Please contribute what you know/find and help build this essential resource!
The idea for this came up at AUUG 2005 in Sydney, originally by Peter Gutmann (cryptlib). People from MySQL AB and the OpenBSD / OpenSSH project immediately responded positively, so Stewart Smith set up this wiki to get things started.
Topics
Memory
Generic libc
Disk I/O
- fsync isn't really sync (and other fun stuff)
- rename doesn't sync get this into your skull.
Tools
Platforms
- AIX
- FreeBSD
- HPUX
- Interix aka Microsoft Services for Unix
- IRIX
- Linux
- MacOS X
- NCR MP-RAS
- NetBSD
- NetWare
- OpenBSD
- OpenServer
- Solaris
- Tru64 aka Digital Unix, OSF/1
- UNICOS (Cray)
- Windows
- OS2
Participating Projects
External References
Discussion Mailing List
- portawiki-discuss mailing list for discussing the portawiki itself (and generic portability issues?)
Links
- Pre-defined C/C Compiler Macros by Bjørn Reese
- Portability Guide by Pete Forman
- Notes On Writing Portable Programs In C by Dolenc/Lemmke/Keppel
- C portability guide by the Mozilla project
- Secure Portability presentation from AUUG2005 by Damien Miller (OpenSSH).
- Single Unix Specification Version 2 The Open Group
- Single Unix Specifiaction Version 3 (aka POSIX.1 or IEEE Std 1003.1, 2004 Edition) The Open Group. Obnoxious registration required.
Books
- W. Richard Stevens, Stephen A. Rago. Advanced Programming in the UNIX(R) Environment, 2nd edition. Addison-Wesley, 2005. Required reading. The 1st edition (1992, Stevens) while somewhat dated is still invaluable.
