Responsible for this page: David Lawrence, davla@ep.liu.se
Page last updated: 2008-07-17
| Files: | Description | File size | Format | |
| Fulltext | 967K | PDF (requires Acrobat Reader) | ||
| Fulltext | 173K | PostScript (requires a PostScript Reader) | ||
| Authors: | Richard W. M. Jones and Paul H. J. Kelly | |||
| Article title: | Backwards-Compatible Bounds Checking for Arrays and Pointers in C Programs | |||
| Conference: | AADEBUG'97. Proceedings of the Third International Workshop on Automatic Debugging: Linköping, Sweden, May 26-27, 1997 | |||
| Publ. type: | Article | |||
| Article No: | 2 | |||
| Language: | English | |||
| Abstract [en]: | This paper presents a new approach to enforcing array bounds and pointer checking in the C language. Checking is rigorous in the sense that the result of pointer arithmetic must refer to the same object as the original pointer (this object is sometimes called the 'intended referent'). The novel aspect of this work is that checked code can inter-operate without restriction with unchecked code, without interface problems, with some effective checking, and without false alarms. This ``backwards compatibility'' property allows the overheads of checking to be confined to suspect modules, and also facilitates the use of libraries for which source code is not available. The paper describes the scheme, its prototype implementation (as an extension to the GNU C compiler), presents experimental results to evaluate its effectiveness, and discusses performance issues and the effectiveness of some simple optimisations. |
|||
| Publisher: | Linköping University Electronic Press | |||
| Year: | 1997 | |||
| Available: | 1997-09-10 | |||
| No. of pages: | 14 | |||
| Pages: | 13-26 | |||
| Series: | Linköping Electronic Articles in Computer and Information Science | |||
| ISSN: | 1401-9841 | |||
| Volume: | 2 | |||
| No: | 009 | |||
| Series: | Linköping Electronic Conference Proceedings | |||
| ISSN (print): | 1650-3686 | |||
| ISSN (online): | 1650-3740 | |||
| Issue: | 1 | |||
| Checksum PDF: | 87de822d6989af8fdefd809b12b3dcf0 /home/ep/www/ea/cis/1997/009/02/cis9700902.pdf (MD5) | |||
| Checksum PS: | 7ba925dbe0db3249efc695540ef729c6 /service/www-ep/docs/ea/cis/1997/009/02/cis9700902.ps (MD5) | |||
| PGP PDF: | PGP | |||
| PGP PS: | PGP | |||
| Old Checksum: | Checksum (PS) | Information about recalculation of Checksum | |||
| SPECIAL INFO: | Checksum, PGP and persistence | |||
REFERENCE TO THIS PAGE:
|
||||