Age | Commit message (Collapse) | Author |
|
This commit also add braces to all `if` statements.
|
|
This makes it easier to write and read from /dev/clock using shell
scripts. The actual performance decrease will be minimal and the
interface is not that perfect for proper time keeping anyways.
|
|
Previously it was possible for fragmentation to occur and as a result
certain allocations would have a linear virtual address space but not a
linear physical address space. This is bad since a lot of calls to
kmalloc_align rely upon both being linear, it has now been changed such
that all allocations done by kmalloc_align now guarantee this mapping
holds for both virtual and physical addresses.
It was due to oversight and sheer luck that this had been working for so
long.
|
|
|
|
It seems to work completely now, but it is still very messy.
|
|
Having min/max be functions was a stupid decision in the first place
|
|
Incomplete but still very cool
|
|
|
|
This is not useful since 99% of the time I will have access to the
serial output. But it does look cool.
|
|
This avoids creation of new buffers and unnecessary memcpys. The old
interface still exists for UDP but will be removed when I am less lazy.
From testing it does not appear to have any performance improvement but
this is most likely due to other bottlenecks as extra copies should
always be worse.
|
|
|
|
Current method is also really bad since it uses multiple copies when it
should instead just copy to the send buffer of the network card
directly. But I have other things that I want to prioritize first.
|
|
This will scan for possible overflows in the program. It is a somewhat
expensive operation but really useful for debugging.
|
|
This is not at all optimal for applications that already buffer their
data but can have a huge impact on those that don't. Applications that
don't wish to use this should disable this for their socket.
|
|
The incorrect timer was being used for TCP ACK flush
|
|
Now it appears to be sufficiently good at producing a distinct seed at
each boot without using a /etc/seed file. Previously it did not do this.
Of course this is nowhere near cryptographically secure but randomness
does assist with things such as kmalloc.
|
|
This can speed up boot times since CMOS would otherwise have to wait
before it could perform a read/write call. Now it gets triggered by a
interrupt.
|
|
This makes use of TSC and now provides a file system interface for
userland programs to change the system time.
|
|
|
|
|
|
|
|
|
|
|
|
Now it avoids waiting for completion if possible and can instead batch
commands.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
TCP is now in a somewhat good state
|
|
Instead of sending every event to userland they now get handeld in the
kernel when possible. It will now only send out events when buttons are
clicked or the mouse position is requested by userland.
|
|
|
|
|
|
|
|
|
|
|
|
I am not sure why the mouse requires interrupt line 2 to be cleared.
|
|
|
|
|
|
|
|
Instead of using the "append only" list it now uses "relist" which
allows for indexes to be removed.
|
|
Instead of having to store state in variables functions are called to
check the object directly.
|
|
|
|
|
|
|
|
sized array
|
|
|