Mailing-List: contact new-httpd-help@apache.org; run by ezmlm Delivered-To: mailing list new-httpd@apache.org Delivered-To: moderator for new-httpd@apache.org Received: (qmail 61315 invoked from network); 19 Feb 2000 17:18:31 -0000 Received: from slarti.muc.de (193.149.48.10) by locus.apache.org with SMTP; 19 Feb 2000 17:18:31 -0000 Received: (qmail 17027 invoked by uid 66); 19 Feb 2000 17:22:46 -0000 Received: from en by slarti with UUCP; Sat Feb 19 17:22:46 2000 -0000 Received: by en1.engelschall.com (Sendmail 8.9.3+3.2W) for new-httpd@apache.org id SAA11637; Sat, 19 Feb 2000 18:16:36 +0100 (CET) Date: Sat, 19 Feb 2000 18:16:36 +0100 From: "Ralf S. Engelschall" To: Apache Group Developer ML Subject: ANNOUNCE: GNU Portable Threads (Pth) 1.3 Message-ID: <20000219181636.A11332@engelschall.com> Reply-To: rse@engelschall.com Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 1.0.1i Organization: Engelschall, Germany. X-Web-Homepage: http://www.engelschall.com/ X-PGP-Public-Key: https://www.engelschall.com/ho/rse/pgprse.asc X-PGP-Fingerprint: 00 C9 21 8E D1 AB 70 37 DD 67 A2 3A 0A 6F 8D A5 ____ _ _ | _ \| |_| |__ | |_) | __| '_ \ ``Only those who attempt | __/| |_| | | | the absurd can achieve |_| \__|_| |_| the impossible.'' GNU Pth - The GNU Portable Threads Version 1.3 now available Pth is a very portable POSIX/ANSI-C based library for Unix platforms which provides non-preemptive priority-based scheduling for multiple threads of execution (aka "multithreading") inside event-driven applications. All threads run in the same address space of the server application, but each thread has its own individual program-counter, run-time stack, signal mask and errno variable. The thread scheduling itself is done in a cooperative way, i.e., the threads are managed and dispatched by a priority- and event-driven non-preemptive scheduler. The intention is that this way both better portability and run-time performance is achieved than with preemptive scheduling. The event facility allows threads to wait until various types of internal and external events occur, including pending I/O on file descriptors, asynchronous signals, elapsed timers, pending I/O on message ports, thread and process termination, and even results of customized callback functions. Pth also provides an optional emulation API for POSIX.1c threads ("Pthreads") which can be used for backward compatibility to existing multithreaded applications. Pth 1.3 has an even more extensive support for auto-configuring the package to work on the different Unix platforms without the requirement for the end user to manually adjust the package. Additionally the underlying thread creation and dispatching mechanism was greatly enhanced and cleaned up, too. With this, version 1.3 now was successfully built and tested on numerous Unix platforms, ranging from the major ones like GNU/Linux, FreeBSD, NetBSD, OpenBSD, BSDI, Solaris, HPUX, Tru64, AIX, IRIX, UnixWare and SCO, to more esoteric flavors like SINIX, ReliantUNIX, ISC, SCO, NCR, AmigaOS, Rhapsody and AUX. Additionally the auto-configuration mechanism allows GNU Pth to automatically adjusts itself to run also on mostly all remaining Unix platforms, including ancient versions for which a multi-threading environment never existed before. This is especially achieved in Pth by not using any assembly code or platform specific solutions and by using a very tricky but portable thread creation fallback approach which will be published in great detail on the USENIX 2000 Annual Conference this summer. http://www.gnu.org/software/pth/ ftp://ftp.gnu.org/gnu/pth/ Ralf S. Engelschall rse@engelschall.com www.engelschall.com