Commit Graph

270 Commits

Author SHA1 Message Date
65cbfbc743 qcow2: reuse cluster data for adjacent sectors (speed up ~30%) 2023-01-18 20:16:33 +00:00
dd34949209 qcow2: cache L1 table (speed up ~10% on my system) 2023-01-18 19:46:44 +00:00
76c7819882 Split I/O code to generic io* and platform specific io_async* 2023-01-18 08:32:17 +00:00
3345936052 Add lfbview tool: LFB viewer using SDL2
In theory, should work under X and Wayland.
It won't work under Windows though because of used system calls.
2023-01-18 03:04:02 +00:00
53683cf146 umka_os: route virtual device IRQs via IDT 2023-01-18 02:58:09 +00:00
da8f029e5d Move static variables to context structures 2023-01-17 00:58:28 +00:00
74a593746e Pass a tool number to umka_init command
Implemented tools:
 + umka_shell
 + umka_fuse
 + umka_os
 + umka_gen_devices_dat
2023-01-16 05:49:24 +00:00
783545bdf8 Create platform specific I/O module, prepare for io_uring 2023-01-16 04:54:34 +00:00
f1b6893e4d vdisk: use file descriptors instead of FILE*s
This should help with io_uring later.
2023-01-16 03:14:48 +00:00
99c50bd258 Make umka_os use a start up script, don't hardcode 2023-01-16 02:51:46 +00:00
102dad1daf Compile in core/sys32.inc 2023-01-12 21:24:06 +00:00
e8f75d1d03 Fix samehash and lookup_v5 tests 2023-01-09 04:07:36 +00:00
59ac33c787 Fix XFS lookup tests 2023-01-09 02:10:40 +00:00
436aa461b0 Use sgdisk to partition images 2023-01-09 02:07:42 +00:00
d80c240abd Update {gen,mk}samehash tools for xfs, add new fat* and ext* tests 2023-01-09 02:07:28 +00:00
4a6f3e3039 Add mksamehash utility to make same-hash directories
Yes, first you generate names with gensamehash (very slow) and then
make many directories with mksamehash (relatively fast).
2023-01-09 02:07:20 +00:00
eb243bf14f Switch image generation from GNU Make to GNU Bash
Should have been done long time ago.
2023-01-09 02:07:20 +00:00
bbc42c6436 Implement qcow2 support, convert most images from raw
This allows exbibyte-sized images, compression and (potentially)
non-destructive writing.
2023-01-09 02:07:20 +00:00
ef72da6b76 Make shell:disk_list_partitions() report PiB ad EiB
I.e. pebibytes and exbibytes. 1 zebibyte (ZiB) is 2^70 bytes which is
above 2^64 bytes, so ignore it so far.

Btw, 2^80 bytes is 1 yobibyte (YiB).
2023-01-09 02:07:07 +00:00
464b92cda4 Change filename suffix of raw images from .img to .raw 2023-01-09 02:07:05 +00:00
887b904904 Split vdisk to vdisk_raw and vdisk_qcow2
vdisk_raw got existing functionality, no new features. Qcow2 support is
yet to be implemented. Miniz was imported with that in mind.
2023-01-09 02:06:52 +00:00
e76dea6bf1 Remove some boilerplate and hardcode, add lookup tests 2023-01-09 02:06:46 +00:00
f291ffc03b Make shell:disk_list_partitions() more verbose
Show disk sector size and capacity, partition's size and start sector.
2023-01-03 20:39:10 +00:00
b0be99a9e9 Make all the test hdd images use MBR instead of GPT
Well, it's just easier to generate MBR because GPT requires a few
sectors at the very end of a disk. A separate test for GPT should be
written: with tens of partitions and so on.
2023-01-02 02:26:56 +00:00
fecf7be637 Add two tools: mkdoubledirs and gensamehash
mkdoubledirs creates pairs of directories a/a, b/b, c/c etc. This is to
test file lookup code: there must be a directory named blah only if the
current directory is named blah too.

gensamehash generates file names with the same XFS hash to test the
code that resolves collisions. In principle, can be updated for other
hashes: ext*, exfat, etc.
2023-01-02 01:50:02 +00:00
cb8c3274af Add XFS nrext64 image and test 2022-12-29 03:45:36 +00:00
3cef60408b Use 64bit time_t, add XFS bigtime test, allow atime and mtime testing 2022-12-28 20:39:21 +00:00
715c181582 Wrap kos_osloop, add a test for resizing cursors 2022-06-28 20:13:41 +04:00
395f75d1f7 Speed up coverage, not drastically 2022-06-28 17:10:21 +04:00
bf1af355fe Sync LodePNG with upstream 2022-06-28 12:25:04 +04:00
155df83d73 Clean up vnet, update README 2022-06-28 12:23:14 +04:00
7f88bbf11c Update copyright headers and years 2022-06-27 21:36:56 +04:00
f0f8cb8e37 Get rid of umka_ping hack! Use vnet_init 2022-06-27 16:41:29 +04:00
ac151ef588 [umka_os/linux] Simulate hw interrupts via signals 2022-06-26 23:57:02 +04:00
566de74194 Configure tap via C code. No shell commands needed 2022-06-26 12:44:16 +04:00
d82c5530ed Wrap fs_execute, works for umka_os tool! 2022-06-25 02:41:23 +04:00
52c2167249 Get rid of ctx->fout, use stdout instead 2022-05-31 21:10:43 +04:00
5314ef2cae Implement basic variables (to hide pointers from logs) 2022-05-31 17:43:41 +04:00
20b2013007 Compile in /init.inc 2022-05-30 21:47:49 +04:00
04833f514c Add missing coverage macros 2022-05-30 13:04:04 +04:00
219d72226a Use bestline library, update test logs 2022-05-30 02:08:15 +04:00
cfc0102d28 Use optparse library 2022-05-29 19:17:00 +04:00
a0d3499d57 Add wrappers/tests for keyboard, mouse and cursors 2022-05-29 01:55:13 +04:00
d479f8a121 umka_os: Load very basic userspace KolibriOS app 2022-05-26 16:45:36 +04:00
ce6ad3efa6 Add one more exfat test 2022-04-26 16:21:41 +04:00
52f3acaebc Add exfat test. 2022-04-23 22:34:24 +04:00
985f10fb88 Add tup build stub. 2022-03-12 00:20:40 +04:00
d59c8d5f55 Add a basic exfat test. 2022-03-12 00:08:20 +04:00
c5dd1673af Use freopen instead of fopen for test output 2022-02-09 22:45:17 +03:00
3cf74d2664 Sync with KolibriOS trunk
Tested on r9710.
2022-02-09 22:19:54 +03:00