* Create `rz_windows.h` * Move `RzThread` structure definitions to internal header * Create and use `rz_th_get_user()` API to avoid exposing `RzThread` layout in external header * Make `rz_th_self()` an IPI * Use `_wmkdir()` in `rz_sys_mkdir()` on Windows * Remove unused `winkd_break_read` function * Remove `RzIORap` definition from `rz_io.h` * Remove include of `Windows.h` from `rz_types.h` * Use `rz_windows.h` when necessary * Remove `RzCoreRtrHost` definition from `rz_core.h` * Remove `rz_socket.h` include from `rz_core.h` |
||
|---|---|---|
| .. | ||
| p | ||
| io.c | ||
| io_cache.c | ||
| io_desc.c | ||
| io_fd.c | ||
| io_map.c | ||
| io_memory.c | ||
| io_memory.h | ||
| io_plugin.c | ||
| io_private.h | ||
| ioutils.c | ||
| meson.build | ||
| p_cache.c | ||
| README | ||
| serialize_io.c | ||
RIO design
==========
rio api allows to seamlessly access to underlying IO backends
and define rules on top of it to act as an mmu.
What do io.va means?
--------------------
- obey sections
- Plugins
Actions
-------
- open
- read
- seek
- write
- close
Layers
------
- cache caches write ops and modifies reads
- map allows to map a certain file at a given offset
- sections like maps, but provide more information for virtual addressing
Features
--------
- undo
- buffer
- desc
fn read(io: IO) {
ut64 offset;
if io.offset
}