Map
Index
Random
Help
th

QuoteRef: jimT6_2002

topics > all references > ThesaHelp: references i-l



Topic:
error safe systems
Topic:
security leaks and weaknesses
Topic:
type-safe and secure languages
Group:
security
Topic:
preventing accidental errors
Topic:
dynamic type checking
Topic:
undefined, null, and other signal values
Topic:
strings
Topic:
safe use of pointers
Topic:
memory management by regions or memory pool
Topic:
union data type
Topic:
flavor analysis and typestates for supplementary type checking
Topic:
range checking
Topic:
enumerated data types

Reference

Jim, T., Morrisett, G., Grossman, D., Hicks, M., Cheney, J., Wang, Y., "Cyclone: A safe dialect of C", Proceedings of the General Track, 2002 USENIX Annual Technical Conference, Monterey, California, USA, June 2002, pp. 275-288, http://www.cs.cornell.edu/projects/cyclone. Google

Quotations
abstract ;;Quote: Cyclone is a safe dialect of C; avoids buffer overflows, format string attacks, and memory management errors; static analysis plus run-time checks and annotations
275 ;;Quote: NUL-terminated strings important for efficiency; allows fixed-length buffer that holds variable-length strings; problem of overrun
275 ;;Quote: C allows pointer beyond end of array; leads to buffer overflow
277 ;;Quote: Cyclone has never-NULL pointers (@...) and fat pointers (?...) with run-time checking (e.g., varargs)
277+;;Quote: Cyclone has growable memory region, tagged union, polymorphism, and exceptions
279 ;;Quote: use static, region analysis to prevent dereference of a non-live region; e.g., a block's local variables
279+;;Quote: use annotations to track memory regions across function calls
280 ;;Quote: uses growable regions for safe, explicit memory allocation without relying on a garbage collector
283 ;;Quote: convert C to Cyclone by changing less than 10% of lines; 20-50% of these are fat pointers (?...)
283 ;;Quote: Cyclone is up to 3x slower than C for compute-bound applications; up to 6x slower in microbenchmarks
283 ;;Quote: Cyclone identified array bound violations in three benchmarks
286 ;;Quote: a C enumeration is really treated as 'int'; not useful for tagged unions
286 ;;Quote: a pointer to a zero-terminated array is safe as long as the pointer only moves inside the array and the terminator is safe

Related Topics up

Topic: error safe systems (76 items)
Topic: security leaks and weaknesses (67 items)
Topic: type-safe and secure languages (43 items)
Group: security   (23 topics, 874 quotes)
Topic: preventing accidental errors (37 items)
Topic: dynamic type checking (43 items)
Topic: undefined, null, and other signal values (34 items)
Topic: strings (13 items)
Topic: safe use of pointers (102 items)
Topic: memory management by regions or memory pool (17 items)
Topic: union data type (12 items)
Topic: flavor analysis and typestates for supplementary type checking (68 items)
Topic: range checking (20 items)
Topic: enumerated data types (17 items)

Collected barberCB 4/05
Copyright © 2002-2008 by C. Bradford Barber. All rights reserved.
Thesa is a trademark of C. Bradford Barber.