Go to file
2020-02-06 06:30:31 +03:00
img Add tests for xfs v5 disk format. 2020-01-28 01:54:57 +03:00
test Add wrappers to graphic syscalls. 2020-02-06 06:19:20 +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 Add wrappers to graphic syscalls. 2020-02-06 06:19:20 +03:00
cio.c Support kernel syscall f80, add more tests for extended attributes and unicode. 2019-12-08 04:32:07 +03:00
covpreproc.c Calculate branch coverage! 2020-01-30 04:01:36 +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
kofu.c Add wrappers to graphic syscalls. 2020-02-06 06:19:20 +03:00
kofuse.c Add wrappers to graphic syscalls. 2020-02-06 06:19:20 +03:00
kolibri.asm Remove LWP stub. 2020-02-06 06:30:31 +03:00
kolibri.h Remove LWP stub. 2020-02-06 06:30:31 +03:00
LICENSE Collect coverage via LBR profiling. 2019-10-09 02:35:47 +03:00
makefile Remove LWP stub. 2020-02-06 06:30:31 +03:00
README Update README file. 2019-12-03 01:53:22 +03:00
syscalls.h Fix for inline asm. 2020-02-06 06:26:14 +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 Implement line coverage collection and reporting! 2020-01-29 13:53:13 +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

KOFU & KOFUSE
=============

This is a common project for two related tools, kofu and kofuse. The idea is to
make userspace UNIX tools that use unchanged KolibriOS block and FS source to
test these kernel parts in your favorite developer environment.


Kofu
----

is Kolibri Filesystem in Userspace.
It is an interactive shell with commands that are wrappers around KolibriOS
kernel block and FS functions.


Kofuse
------

is a short for KolibriOS and FUSE [1]. Like kofu above but commands are
translated from FUSE calls, not entered manually.


BUILD
-----

$ KOLIBRIOS=/path/to/kolibrios make

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


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

Kernel services are replaced with stubs or libc calls. Block devices are
emulated with wrappers around regular files. Shell and FUSE FS are written in C.


[1] https://github.com/libfuse/libfuse