Go to file
Ivan Baravy 67f7873e27 Coverage collection speed up 4x!
Also, adjust disk cache size and
move set_eflags_tf() to trace_lbr.c.
2020-02-21 05:21:09 +03:00
img Add tests for xfs v5 disk format. 2020-01-28 01:54:57 +03:00
test Coverage collection speed up 4x! 2020-02-21 05:21:09 +03:00
tools Get rid of losetup, fix s05k_b2k_n8k tests, set name length for mkdirrange. 2019-11-08 05:22:07 +03:00
.gitignore Coverage collection speed up 4x! 2020-02-21 05:21:09 +03:00
covpreproc.c Coverage collection speed up 4x! 2020-02-21 05:21:09 +03:00
GPL2.txt Collect coverage via LBR profiling. 2019-10-09 02:35:47 +03:00
GPL3.txt Collect coverage via LBR profiling. 2019-10-09 02:35:47 +03:00
kolibri.h Coverage collection speed up 4x! 2020-02-21 05:21:09 +03:00
LICENSE Collect coverage via LBR profiling. 2019-10-09 02:35:47 +03:00
lodepng.c Update LodePNG, add -Wswitch-enum option. 2020-02-20 00:59:16 +03:00
lodepng.h Update LodePNG, add -Wswitch-enum option. 2020-02-20 00:59:16 +03:00
makefile Coverage collection speed up 4x! 2020-02-21 05:21:09 +03:00
README Save screenshots to PNG, make tests compare screenshots. 2020-02-19 03:56:58 +03:00
syscalls.h Replace cwd asm procs with inline __asm__ ones. 2020-02-19 05:47:17 +03:00
system.inc Use llseek syscall instead of lseek. 2018-05-15 09:54:22 +03:00
TODO Fix reading at the end of file, update tests, add TODO. 2019-10-27 03:54:38 +03:00
trace_lbr.c Coverage collection speed up 4x! 2020-02-21 05:21:09 +03:00
trace_lbr.h Collect coverage via LBR profiling. 2019-10-09 02:35:47 +03:00
trace.c Remove LWP stub. 2020-02-06 06:30:31 +03:00
trace.h Collect coverage via LBR profiling. 2019-10-09 02:35:47 +03:00
umka_fuse.c Rewrite kos_disk_* procs in C, define more blk/fs related structures. 2020-02-21 02:18:40 +03:00
umka_shell.c Coverage collection speed up 4x! 2020-02-21 05:21:09 +03:00
umka.asm Coverage collection speed up 4x! 2020-02-21 05:21:09 +03:00
vdisk.c Coverage collection speed up 4x! 2020-02-21 05:21:09 +03:00
vdisk.h Coverage collection speed up 4x! 2020-02-21 05:21:09 +03:00

UMKa -- User-Mode KolibriOS developer tools
===========================================

This is a common project for a set of KolibriOS developer tools which are based
on original KolibriOS code wrapped and hacked as to run in the UNIX programming
environment. The idea is to make userspace UNIX tools that use as much unchanged
KolibriOS source as possible to test architecture-independent parts of the
kernel in your favorite developer environment.


umka_shell
----------

is an interactive shell with commands that are wrappers around KolibriOS kernel
block, FS, UI and other functions. Can read input from the keyboard, stdin and a
file, i.e. can be used for automated testing.


umka_fuse
---------

is like kofu above but commands are translated from FUSE calls, not entered
manually. Can *potentially* be used to run xfstests (cross-fs-tests) and
automated tests against reference FS implementations.


BUILD
-----

$ KOLIBRI=/path/to/kolibrios make

/path/to/kolibrios is where you checked out `svn co svn://kolibrios.org`.


Architecture
------------

Kernel services are replaced with stubs, wrappers around userspace
implementation or libc calls. Block devices are emulated with regular files.
Framebuffer can be dumped to disk as image file.


Troubleshooting
---------------

No troubles -- no shooting.


Links & Acknowledgements
------------------------

[1] Filesystem in Userspace library
    https://github.com/libfuse/libfuse

[2] LodePNG by Lode Vandevenne
    https://lodev.org/lodepng/