Share this page
Share this page E-mail this page Print this page RSS feeds
Home > Projects > CHESS > CHESS: Documentation
CHESS: Documentation

Below are the files that come with the CHESS download, converted to PDF. You can read more about CHESS at our FAQ and blog and ask questions at our forum.

  •  
  • Overview
  • Get started with CHESS (after installing) 
    • Bank: a simple example to show how to CHESS in Visual Studio 2008 to discover an atomicity violation.
    • BankWithMChess:bank example, with mchess.exe
    • BankWithWChess: bank example, with wchess.exe
  • Manuals 
  • Samples
    • Visual Studio 2008
      • Bank: a simple example to show how to CHESS in Visual Studio to discover an atomicity violation.
      • ProducerConsumerQueue: a utility that lets one or more producer threads communicate data to one or more consumer threads, using a FIFO queue of bounded capacity. We provide a bug-ridden implementation (as well as corrected code) so you can see how CHESS helps find various kinds of errors.
    • mchess.exe
      • BankWithMChess: a simple example to show how to use mchess.exe to discover an atomicity violation.
      • SimpleBank: a variation of the Bank example that demonstrates (1) how to use ChessBoard, and (2) the role of race detection.
      • RefinementExamples: demonstrates the refinement checking API of CHESS.
      • ThreadPoolWait: demonstrates a nice little data race in an MSDN sample
    • wchess.exe
      • BankWithWChess: a simple example to show how to use wchess.exe to discover an atomicity violation.
      • critsec: the basic example that describes the unit-testing methodology for CHESS
      • deadlock: a simple example that show how to use wchess.exe to discover a deadlock