Changes between Version 5 and Version 6 of Ticket #317
- Timestamp:
- 2012-03-09T13:39:35Z (13 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
Ticket #317 – Description
v5 v6 3 3 Details:: 4 4 The implementation should primarily consist of a versatile library that would provide: 5 * An API to dynamically (at run -time) define and manipulate data structures (data schemas) comprising of typical basic and compound data types (integers, arrays, structs, unions, pointers)5 * An API to dynamically (at run time) define and manipulate data structures (data schemas) comprising of typical basic and compound data types (integers, arrays, structs, unions, pointers) 6 6 * An API to enumerate the members of such data structures 7 7 * An API to compute field offsets (addresses) 8 8 * An API to read and write values of the members and traverse complex data structures using pointers (with custom pointer resolution routines) 9 * A parser which would provide a way howto define the data structures (data schemas) in a textual representation (XML-based description, C-like type declaration or a DSL)9 * A parser which would provide a way to define the data structures (data schemas) in a textual representation (XML-based description, C-like type declaration or a DSL) 10 10 * A generator which would output the data structure definition in the textual representation which the library can parse again. 11 * Support for custom memory back-ends using code plug ins (file, task memory [using udebug], block device)12 The implementation should also contain a readily available definitions for common data structures (either as code plugins or in the form of textural representation), e.g.:11 * Support for custom memory back-ends using code plug-ins (file, task memory [using udebug], block device) 12 The implementation should also contain readily available definitions for common data structures (either as code plug-ins or in the form of textural representation), e.g.: 13 13 * ubiquitous data structures (doubly-linked link lists, hash tables, etc.) 14 14 * ELF file format (with DWARF data) … … 27 27 28 28 Required skills:: 29 A successful applicant will have good skills of programming in the C language and experience with designing reusable and exten dable libraries with decent internal structure and public API. For the end-user interactive editor the ability to learn and use HelenOS-specific console manipulation routines is also expected.29 A successful applicant will have good skills of programming in the C language and experience with designing reusable and extensible libraries with decent internal structure and public API. For the end-user interactive editor the ability to learn and use HelenOS-specific console manipulation routines is also expected. 30 30 31 31 Documentation::