Idea for a new kernel - amateur, so be nice, please!
Posted: Sat Oct 05, 2013 2:44 pm
Ok guys, so I have been gone a while, learned some more stuff, but still have no actual experience writing any kind of low-level software, albeit I have studied on it a lot.
I thought about this kernel (32-64 bit, backwards/upwards compatible, emulation support, multiple file format support) that would have some system software that it comes with (no loader, the software comes natively built within a kernel process), and here are some examples:
1.Kernel process natively designed with multi-clipboard capabilities (the text you copy, ASCII/UTF-8, etc.) will be a kernel process rather than a user-level process. This is a "system-built" process that works with any compatible GUI/text UI system to hold many "slots" of clipboard data, and by hitting the right key combination (e.g. ALT+slot number) the user can bring up whatever copied characters up, and the slot table can be re-order, arranged, and cleared from a GUI program, or through a command interpreter/command line, etc. This has never been done before, and this way if any user-level program crashes you can always still retain the data as long as the kernel process is executing normally.
2.Native emulation support (backwards and upwards compatible execution) enables the kernel to parse/load executable formats in 16, 32, or 64-bit code, and execute them as if they were native (emulation). Also, supports formats from other top executables, and can use native kernel supported processes to create a software compatibility layer. Advantage? No extra programs need to be installed/downloaded, and no user-level programs can stall this as it's a kernel process.
3.Some device drivers are "built in" as well.
Also, higher-design implementations must be taken appropriately to enhance the concept of the "monolithic kernel".
By giving better support to other binaries, having it natively implemented within the kernel, and having the bridge between user and kernel processes shortened makes for a much more speedy system call.
What do you guys think? Any constructive criticism? Remember to keep an open mind!
I thought about this kernel (32-64 bit, backwards/upwards compatible, emulation support, multiple file format support) that would have some system software that it comes with (no loader, the software comes natively built within a kernel process), and here are some examples:
1.Kernel process natively designed with multi-clipboard capabilities (the text you copy, ASCII/UTF-8, etc.) will be a kernel process rather than a user-level process. This is a "system-built" process that works with any compatible GUI/text UI system to hold many "slots" of clipboard data, and by hitting the right key combination (e.g. ALT+slot number) the user can bring up whatever copied characters up, and the slot table can be re-order, arranged, and cleared from a GUI program, or through a command interpreter/command line, etc. This has never been done before, and this way if any user-level program crashes you can always still retain the data as long as the kernel process is executing normally.
2.Native emulation support (backwards and upwards compatible execution) enables the kernel to parse/load executable formats in 16, 32, or 64-bit code, and execute them as if they were native (emulation). Also, supports formats from other top executables, and can use native kernel supported processes to create a software compatibility layer. Advantage? No extra programs need to be installed/downloaded, and no user-level programs can stall this as it's a kernel process.
3.Some device drivers are "built in" as well.
Also, higher-design implementations must be taken appropriately to enhance the concept of the "monolithic kernel".
By giving better support to other binaries, having it natively implemented within the kernel, and having the bridge between user and kernel processes shortened makes for a much more speedy system call.
What do you guys think? Any constructive criticism? Remember to keep an open mind!