cirosantilli / linux-kernel-module-cheat

The perfect emulation setup to study and develop the Linux kernel v5.4.3, kernel modules, QEMU, gem5 and x86_64, ARMv7 and ARMv8 userland and baremetal assembly, ANSI C, C++ and POSIX. GDB step debug and KGDB just work. Powered by Buildroot and crosstool-NG. Highly automated. Thoroughly documented. Automated tests. "Tested" in an Ubuntu 24.04 host.
https://cirosantilli.com/linux-kernel-module-cheat
GNU General Public License v3.0
4.21k stars 605 forks source link

Create LKMC packages to have a nice run mechanism for third party packages like dhrystone #117

Open cirosantilli opened 4 years ago

cirosantilli commented 4 years ago

In LKMC d53ffcff18aa26d24ea34b86fb80e4a5694378dc we basically can nicely run 3 types of things:

However, more and more, we want nice interfaces to run other third party programs, notably benchmarks like Dhrystone, and notably in userland simulation.

Currently, we just have a shitty interface for it as shown in https://cirosantilli.com/linux-kernel-module-cheat/#dhrystone

./run --userland "$(./getvar userland_build_dir)/submodules/dhrystone/dhrystone"

What would be amazing is if we had proper "LKMC packages", maybe similar to: https://github.com/cirosantilli/linux-kernel-module-cheat/issues/116 and the ncould do just:

./run dhrystone
./run userland c/hello
./run linux
./run baremetal

and then make userland, linux and baremetal into regular packages.

The packages could also generate Bash command strings to run the packages withing full system Linux simulation.