Copyright (C) 2005 - 2016 Anders Gidenstam
Feel free to drop me an e-mail (see bottom of page for the address) if you find some of this software useful or have other comments, suggestions or questions.
For more information on lock-free and wait-free synchronization, see e.g. the publications page of the research group on Distributed Computing and Systems where I did my Ph.D.
If you are looking for a production quality library of non-blocking data structures and algorithms I highly recommend NOBLE - a library of non-blocking synchronization protocols by Håkan Sundell and Philippas Tsigas. (What I have here has not reached that level of maturity yet.)
See the NBAda reference manual draft for more information.
NBAda is written in Ada 95, but with some specific dependences on GNAT (e.g. for inline assembler) and some (fairly reasonable) assumptions on how various data types are represented that are not guranteed by the Ada Language Reference Manual but seem to hold on the platforms and compilers I have tried.
The 0.1.0-pre0 release has been tested on:
Older versions have been tested on (among others):
(NOTE: With GNAT 3.14p and 3.15p the gnat.adc file usually present in my packages might need to be removed.)
NBAda is released under the GNU General Public License version 2 or later.
NBAda - A library of lock-free data structures and algorithms for Ada Copyright (C) 2004 - 2013 Anders Gidenstam This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.
back to Anders' Ada software page