Seems I have finally got my apache list setup working properly. I think I need to make some clarification for my current directory setup in the repository.
The idea was to minimize the modifications to both Linux and Nuttx while providing the ability to run them in parallel and accessing each other's benefit. Therefore, I used jailhouse hypervisor which is a simple hardware enabled partitioning hypervisor. Only bootloader is needed for porting a existing RTOS to jailhouse if the architecture is already supported by the RTOS. About the nuttx directories: * I tried not to modify the architecture independent part of nuttx, but I might did some in the early day of development, when I was using dynamic linking interface instead of system call interface. * arch/x86_64: contains my port of the x86_64 Nuttx, I tried to maintain the same directory structure as i486 port, but for x86_64, I really had a difficulty to separate common, intel64, broadwell architecture part perfectly. * arch/x86_64/src/linux_subsystem: This is where the Linux compatibility layer lives and licensing can be painful. * config/jailhouse-intel64: This directory contains the drivers and bootloader related to jailhouse. I tried to make a clean split of the Jailhouse related components and pure x86_64 part, but I might have failed some where. I do think that we can: 1. Find and revert any unnecessary change to the Nuttx kernel. 2. Clean up the arch/x86_64 code, decouple it from Jailhouse completely, and provide a qemu port. 3. Try to work out a working development environment with qemu, instead of jailhouse, for the sake that everyone can try it. (Because setting up Jailhouse is really a pain in the ass). 4. We can continue onto integrate the Linux compatibility layer and Linux binary loader after these are properly done. ---- Yang -- Yang Chung Fan (楊宗凡) (ヤン ゾン ファン) Member of Softlab, Tsukuba University , Japan Email: sonic.tw...@gmail.com