Age | Commit message (Collapse) | Author |
|
- [kernel: conf]: Update default console foreground to #B57614 [0]
- [kernel]: Add support for SMBIOS/DMI [1]
- [kernel/amd64]: Only use USER_DS in md_td_kick() [2]
- [kernel/amd64: i8042]: Use DMI for quirk checking [3]
- [kernel/amd64: mc1468xx]: Offset year by 2000 (century fixups) [4]
- [kernel/amd64: mc1468xx]: Implement date setting [5]
- [kernel/amd64]: Deprecate ALT key to reboot [6]
- [kernel: namei]: Add NAMEI_WANTPARENT flag [7]
- [kernel: vfs]: Add support for O_CREAT flag [8]
- [kernel: cons]: Handle horizontal tabs ('\t') [9]
- [kernel: exec_elf64]: Zero fill .bss section [10]
- [kernel: panic]: Wipe screen for panic information [11]
- [kernel]: Rename 'hyra-kernel' to 'hyra.krq' [12]
- [kernel]: Introduce SYS_inject syscall [13]
- [kernel]: Add tmpfs support [14] [15] [16] ...
- [kernel]: Validate operations against file seal [17]
- [kernel]: Add CRC32 support [18]
- [kernel]: Add support for coredumps [19]
- [usr: libc]: Store auxiliary vector tag/value [20]
- [usr: libc]: Add POSIX sysconf() [21]
- [usr: libc]: Add POSIX fileno() [22]
- [usr: libc]: Add realloc() [23]
- [usr: libc]: Implement fopen() and close [24]
- [usr: osh]: Implement shell script parsing [25]
- [usr: osh]: Add support for comments (denoted by '@') [26]
- [usr: osh]: Allow execution of direct paths [27]
- [usr]: Add POSIX getconf program [28]
- [usr]: Add 'cat' program [29]
- [usr]: Add 'echo' program [30]
- [usr]: Add init.rc startup script [31]
- [usr]: Add 'readcore' program [32]
Commits referenced:
[0]: 4a87b750d5203d933aedc2f48e0b1ccd1956d97f
[1]: f725323f3fd14e5a1f3b091f7ef0dcbbf8bd9c23
[2]: 074ef7ccfadb6ae36a88fe300b44f16057f970d4
[3]: e4a3671633f2b7783123c5456aa0ab3c27d69cc4
[4]: 6b8e1e161069e8d1722a55442c081be2f30189a5
[5]: cb2cd8b2556239b462759c4c0b04aec253835bc1
[6]: 63ca633b1797cd8a1e33ce1ea93628e88d8e150d
[7]: 8877f9b8a8992388b4f64d425a48b02a3229cf61
[8]: bbd861c0cd4c26e2699392fec3ae0ec7df8ab145
[9]: d8a8fa32fb988e91cce17b18e2b79d35793526b6
[10]: 228310e565d809e587cb0b8ab77353d6751a12e2
[11]: c1fa9c578fa6c6b329aeb7118afb55306134a301
[12]: 5920cf33f368b8de20919c44fa574fd6c69f69e8
[13]: 78fe4f99b6cb6c85be3d28fdb7ee8ac6de55575e
[14]: eb829b70db46ad86a1c85740f5ca02b7ba29ce4f
[15]: 35c6690e0b1611134de032c281976a62e4d2c9fd
[16]: a64865a93fdb22dee230d57a0a3c684668545acd
[17]: 5e4cf6049be6cf8bd8033295973c5aa8282995b8
[18]: 68e404c22776f547158aa8f1a88f29c757167591
[19]: 88285ca7d9ac11c99b01a44d3525acb82d35e1de
[20]: 46190922e0fb42d27bc7c8ed85d9fd44664f50ef
[21]: 8beb7f3ad581076f08e363b724488eaa27d089ac
[22]: c12bb17d66fa58422a0d50b4242a7507852d0405
[23]: 56e6e20dbc29fd1906f8616a5eb1fafb9637a61c
[24]: 0b3d95682de696f5691d24d29512783a4a0c0c9f
[25]: 5d96b8559c0f506fe730afdd21c716787b4a1d1e
[26]: 21d6805767f5b277e00409bf1c3b61c6e125c5f0
[27]: 655c43f4b8a2d42b2f7b9c85b8ad6d8de6e6a284
[28]: 66ec8765f305c7a5318d38a383e23b1280cd9186
[29]: 4e3351d4a75c02ac7a2a8c60cc6fa6579d95f08f
[30]: 08dc44c415c63abd71524468afe26b42f2e23b69
[31]: 8ce4282e92455e9da19c9fc1f7d6bc313567717f
[32]: d527cf1b1d8ddbfa79d9b912fe9a7943e19f6555
Signed-off-by: Ian Moffett <ian@osmora.org>
|
|
This commit introduces a new program called 'readcore'. This program
allows a user to debug crashed programs by passing in the path of a
coredump file.
Signed-off-by: Ian Moffett <ian@osmora.org>
|
|
To make debugging userland program crashes easier, this commit
introduces coredumps that store the last known process state into a
temporary /tmp/core.X file (where X is the PID of the faulting process).
Signed-off-by: Ian Moffett <ian@osmora.org>
|
|
- Add support for 32-bit cyclic redundancy checks
Signed-off-by: Ian Moffett <ian@osmora.org>
|
|
Allow the user to configure if SMEP would be enabled for their build of
the Hyra AMD64 port
Signed-off-by: Ian Moffett <ian@osmora.org>
|
|
Some CPUs support Supervisor Memory Execution Protection that prevent ring 3
code from being executed in a ring 0 context. Enable this on CPUs that
support it.
Signed-off-by: Ian Moffett <ian@osmora.org>
|
|
Keep track of per-cpu features by using a 'feat' field which contains
the results of various CPUIDs.
Signed-off-by: Ian Moffett <ian@osmora.org>
|
|
If we have never written to a tmpfs file, the buffer for it will have
never been allocated and that would lead to NULL pointer issues such as
system-wide crashes. Return zero bytes read if nothing was ever written.
Signed-off-by: Ian Moffett <ian@osmora.org>
|
|
Signed-off-by: Ian Moffett <ian@osmora.org>
|
|
If multiple processes try to write to the console, a race condition
of sorts may occur. Similarly, if multiple processes try to read from the
console and contend with the console input buffer. One process may steal
keys from the other. Prevent this by implementing a mutex within the
console descriptor. Each time a process reads or writes the console, it
attaches itself. Any other processes attempting to read or write the
console while another is attached will be yielded to the scheduler
until the resource is free.
Signed-off-by: Ian Moffett <ian@osmora.org>
|
|
Signed-off-by: Ian Moffett <ian@osmora.org>
|
|
Signed-off-by: Ian Moffett <ian@osmora.org>
|
|
Add mutex locks, these differ from spinlocks as they are named and also
yield to the scheduler instead of just spinning if the lock is acquired.
Signed-off-by: Ian Moffett <ian@osmora.org>
|
|
Signed-off-by: Ian Moffett <ian@osmora.org>
|
|
Signed-off-by: Ian Moffett <ian@osmora.org>
|
|
Sometimes one may not want *all* of the drivers to start up during
system boot. The driver blacklist allows one to mark a driver to be
ignored during startup.
Signed-off-by: Ian Moffett <ian@osmora.org>
|
|
Assign a name to each driver through the DRIVER_EXPORT() or
DRIVER_DEFER() macros. This can be used for blacklisting driver
startups.
Signed-off-by: Ian Moffett <ian@osmora.org>
|
|
Introduce a 'board_info' structure as well as an md_get_board() routine
to get information about the host
Signed-off-by: Ian Moffett <ian@osmora.org>
|
|
Add 'show_curs' feat flag to enable/disable whether or not the cursor
should be drawn
Signed-off-by: Ian Moffett <ian@osmora.org>
|
|
Signed-off-by: Ian Moffett <ian@osmora.org>
|
|
Introduce a ctlfs entry for configuring various console features such as
the ability to parse ANSI escape codes.
Signed-off-by: Ian Moffett <ian@osmora.org>
|
|
Signed-off-by: Ian Moffett <ian@osmora.org>
|
|
This commit cleans up the read routine by creating a helper that fetches
common fields from the ctlfs entry while checking things such as its
magic number.
Signed-off-by: Ian Moffett <ian@osmora.org>
|
|
Introduce a 'feat' field in the cons_screen structure to allow certain
console features to be turned on or off.
Signed-off-by: Ian Moffett <ian@osmora.org>
|
|
Signed-off-by: Ian Moffett <ian@osmora.org>
|
|
Signed-off-by: Ian Moffett <ian@osmora.org>
|
|
Signed-off-by: Ian Moffett <ian@osmora.org>
|
|
Signed-off-by: Ian Moffett <ian@osmora.org>
|
|
Signed-off-by: Ian Moffett <ian@osmora.org>
|
|
Signed-off-by: Ian Moffett <ian@osmora.org>
|
|
The 'len' field within the tmpfs node stores the buffer length which is
relative to the tmpfs block size. Introduce a real size which returns
the amount of data actually present within those buffers.
Signed-off-by: Ian Moffett <ian@osmora.org>
|
|
Signed-off-by: Ian Moffett <ian@osmora.org>
|
|
Signed-off-by: Ian Moffett <ian@osmora.org>
|
|
Signed-off-by: Ian Moffett <ian@osmora.org>
|
|
Signed-off-by: Ian Moffett <ian@osmora.org>
|
|
Signed-off-by: Ian Moffett <ian@osmora.org>
|
|
Signed-off-by: Ian Moffett <ian@osmora.org>
|
|
Signed-off-by: Ian Moffett <ian@osmora.org>
|
|
This commit allows the end-user to supply a path (e.g., /usr/bin/mrow)
straight to the shell to be interpreted as a binary executable path.
Signed-off-by: Ian Moffett <ian@osmora.org>
|
|
Signed-off-by: Ian Moffett <ian@osmora.org>
|
|
Signed-off-by: Ian Moffett <ian@osmora.org>
|
|
The SYS_inject syscall will allow the user to inject Kernel Runtime Quantums
(KRQs) into the running kernel. As of now, set paths are not supported and the
initial implementation includes a NULL path used to load all deferrable drivers.
Previously during kernel startup, all deferrable drivers were loaded
automatically. This commit makes it so that they are only loaded when
sys_inject() is called with a NULL path.
Signed-off-by: Ian Moffett <ian@osmora.org>
|
|
Signed-off-by: Ian Moffett <ian@osmora.org>
|
|
This commit prepares for Hyra Kernel Runtime Quantums (KRQs) which
allows one to make the kernel more modular
Signed-off-by: Ian Moffett <ian@osmora.org>
|
|
Signed-off-by: Ian Moffett <ian@osmora.org>
|
|
Clear the screen and tweak console foreground/background to urgent
looking colors during a system panic
Signed-off-by: Ian Moffett <ian@osmora.org>
|
|
Signed-off-by: Ian Moffett <ian@osmora.org>
|
|
Signed-off-by: Ian Moffett <ian@osmora.org>
|
|
- Rename regdump() to trap_fatal()
- Use panic() rather than kprintf()
Signed-off-by: Ian Moffett <ian@osmora.org>
|
|
Signed-off-by: Ian Moffett <ian@osmora.org>
|