Linux

Home * Software * Linux



Linux, a Unix compatible operating system written by Linus Torvalds and contributors. It has gained widespread use in most every aspect of computing technology. Linux's support for consumer grade chess engines and GUIs is not great, but is improving. Once, XBoard with GNU Chess was the only program, but now the commercial Shredder, and the free PyChess, Scid vs. PC, Cute Chess and Arena have polished interfaces and are easy to use. The powerful and fast database program, SCID (and it's many derivatives), make Linux a valid choice for chess professionals preparing for tournament matches.

=Chess GUIs=
 * Arena
 * Banksia GUI
 * ChessX
 * Cute Chess
 * EBoard
 * glChess
 * GNOME Chess
 * PyChess - Versatile chess program.
 * Scid vs. PC - Polished, user-friendly fork of SCID.
 * Shredder - Polished commercial product, with a 30 day trial.
 * XBoard

=Chess Engines=
 * XBoard Engines
 * Linux Engines

=User Interfaces= =Development=
 * X Window System from Wikipedia
 * KDE from Wikipedia
 * GNOME from Wikipedia
 * Xfce from Wikipedia

OS Internals

 * Linux kernel from Wikipedia
 * The Linux Kernel by David A Rusling
 * Linux Activations by Vincent Danjean
 * A NUMA API for Linux (pdf, April 2015) » NUMA

IDE

 * Emacs from Wikipedia
 * Eclipse from Wikipedia
 * Eclipse.org home

Libs

 * C standard library
 * GNU C Library from Wikipedia
 * GNU C Library - GNU Project - Free Software Foundation


 * Native POSIX Thread Library from Wikipedia
 * Qt (software) from Wikipedia
 * Boost (C++ libraries) from Wikipedia
 * Marcel a two-level scheduling thread library by Vincent Danjean

Compiler

 * GNU Compiler Collection from Wikipedia
 * GCC, the GNU Compiler Collection


 * Intel C++ Compiler
 * Intel® Compilers

Calling Conventions
Agner Fog describes x86 and x86-64 calling conventions for different C++ compilers and operating systems, covering 32-bit and 64-bit Linux :

The document contains details about data representation, function calling conventions, register usage conventions, name mangling schemes, etc. for many different C++ compilers and operating systems. Discusses compatibilities and incompatibilities between different C++ compilers. Includes information that is not covered by the official Application Binary Interface standards (ABI's). The information provided here is based on my own research and therefore descriptive rather than normative. Intended as a source of reference for programmers who want to make function libraries compatible with multiple compilers or operating systems and for makers of compilers and other development tools who want their tools to be compatible with existing tools.

Other Languages

 * Java
 * Ruby

=See also=
 * Android
 * Free Chess on the Internet (FICS)
 * Free Software Foundation
 * Huge Tables
 * NUMA
 * Unix
 * Windows
 * x86

=Publications=

1999

 * Vincent Danjean (1999). Extending the Linux kernel with Activations for Better Support of Multithreaded Programs and Integration in PM2. Master thesis, Magistère d'informatique et modélisation (MIM), ENS Lyon, Sep. 1999, zipped ps

2000 ...

 * Vincent Danjean, Raymond Namyst, Robert Russell (2000). Integrating Kernel Activations in a Multithreaded Runtime System on Linux. Proc. 4th Workshop on Runtime Systems for Parallel Programming (RTSPP~'00), zipped ps
 * Vincent Danjean, Raymond Namyst, Robert Russell (2000). Linux Kernel Activations to Support Multithreading. Proc. 18th IASTED International Conference on Applied Informatics, zipped ps
 * Peter Jay Salzman, Ori Pomerantz (2001). The Linux Kernel Module Programming Guide.
 * Andi Kleen (2004). An NUMA API for Linux. SUSE Labs, pdf » NUMA

2010 ...

 * Richard Cochran, Cristian Marinescu (2010). Design and Implementation of a PTP Clock Infrastructure for the Linux Kernel. IEEE International Symposium on Precision Clock Synchronization for Measurement, Control, and Communication
 * Richard Cochran, Cristian Marinescu, Christian Riesch (2011). Synchronizing the Linux System Time to a PTP Hardware Clock. IEEE International Symposium on Precision Clock Synchronization for Measurement, Control, and Communication

=Forum Posts=

2000 ...

 * Linux by Frank Phillips, CCC, May 12, 2001
 * Using 2 machines for matches (Linux) by Jon Dart, CCC, June 24, 2001 » XBoard
 * What is the future for Linux? by Leonid, CCC, October 03, 2002
 * Linux SMP by Russell Reagan, CCC, August 31, 2003 » SMP
 * Porting an engine to Linux by Josué Forte, Winboard Forum, September 18, 2003
 * chess GUI under Linux by Vasik Rajlich, CCC, March 23, 2004 » GUI

2005 ...

 * (Experimental) 64-bit Rybka on Linux by Sesse, Rybka Forum, July 10, 2007 » Rybka
 * 64-bit development in Linux by Gregory Strong, CCC, February 08, 2009

2010 ...

 * My experience with Linux/GCC by Richard Vida, CCC, March 23, 2011
 * Switching from Ubuntu by Steven Edwards, CCC, August 15, 2012
 * Debian 7 by Steven Edwards, CCC, May 25, 2013
 * Shogi in Unix/Linux? by Joshua Pettus, Winboard Forum, October 19, 2013 » Shogi
 * To GUI developers and Linux engine packagers by H.G.Muller, CCC, September 12, 2014 » GUI

2015 ...

 * Test epd for Linux ? by Jean Arthuin, CCC, March 25, 2016 » EPD, STS, XBoard
 * Linux Chess GUI that's good for engine matches/tournaments by Shawn Chidester, CCC, June 16, 2016 » GUI
 * Crashing engines (Linux) by Harm Geert Muller, CCC, September 18, 2016 » Process, XBoard
 * Arena for Linux by Jesse Gersenson, CCC, November 15, 2016 » Arena
 * What Linux compatible Numa aware engines are available? by Dann Corbit, CCC, March 29, 2017 » NUMA
 * Configure Arena Linux 1.1 with engines of certain ELO by Yves De Billoëz, CCC, July 19, 2017 » Arena
 * For how many of these are there functional Linux versions? by Dann Corbit, CCC, October 07, 2017
 * Engines for testing (Linux, fast time control) by Jon Dart, CCC, November 18, 2017 » Engine Testing
 * Linux friendly engines at all levels by Cédric Beaume, CCC, January 23, 2019
 * Linux flavors - opinions by Michael B, CCC, June 28, 2019

2020 ...

 * List of bugfree, opensource Linux and MacOSX engines by Oliver Brausch, CCC, November 08, 2020
 * UCI Gui to remote Linux Engine by Joshua Shriver, CCC, December 05, 2020 » UCI, GUI

=Further Links=
 * Linux from Wikipedia
 * GNU/Linux naming controversy from Wikipedia
 * Tanenbaum–Torvalds debate from Wikipedia
 * Linux and Chess

Distribution

 * Linux distribution from Wikipedia
 * Debian from Wikipedia
 * Knoppix from Wikipedia
 * Ubuntu from Wikipedia


 * Red Hat from Wikipedia
 * Slackware from Wikipedia
 * SUSE Linux distributions from Wikipedia

Chess GUIs

 * Cute Chess » Cute Chess
 * GLChess
 * Scid vs. PC » Scid vs. PC
 * Shredder Computer Chess Download - Linux » Shredder
 * XBoard - GNU Project » XBoard

Chess Databases

 * Scid vs. PC Currently without support for the latest Scid database format.
 * ChessX Gorgeous, but feature poor, QT based utility.
 * Scidb Still in development, but promises ChessBase support (read-only)

=References=

Up one Level