Age | Commit message (Collapse) | Author |
|
This is not useful since 99% of the time I will have access to the
serial output. But it does look cool.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
A lot of code written usually has means of doing allocations in a more
optimal way than having the string builder library doing it itself.
For example a temporary buffer can be allocated on the stack and the
string builder functions can then make use of this buffer without ever
having to run malloc/free(which would be expensive)
|
|
`get_page` is a horrible multipurpose function and at this point I am
unsure what behavior I expect and have expected it to produce. Refactor
should probably be done soon.
|
|
|
|
|
|
|
|
|
|
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.
|
|
|
|
|
|
|
|
|
|
This is a faster, zero allocation function for reading directory
entries. It has massive speed increases for certain applications since
malloc(especially my implementation) is really slow in comparison.
|
|
|
|
|
|
|
|
This function is significantly faster due to not requiring memory
allocations for each directory entry. Now they are instead just
allocated as a large chunk. This function is not compatible with scandir
since the cleanup of both function will be different.
With this a new function scandir_sane_free has also been added.
Besides having a function(like scandir) that forces the programmer to
implement their own cleanup procedure that is anymore complicated than a
simple free() call is absurd.
|
|
Adds support for shebangs (#!) that allow for things such as shell
scripts without appending `sh` before the file.
|
|
|
|
|
|
I appear to have assumed that len would always be the number requested
not the number left to be read. Therefore to get the number of bytes
left ot read I did `len - rc` but the `- rc` was already accounted for
by line 298.
|
|
|
|
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.
|
|
|
|
|
|
|
|
The other inode might already have been freed when close() is called.
|
|
|
|
Apparently getting the current TSC is a expensive operation. This change
had a significant improvements for I/O heavy applications.
|
|
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.
|
|
Also adds sha1sum.c file which I forgot in a previous commit
|
|
This makes use of TSC and now provides a file system interface for
userland programs to change the system time.
|
|
|
|
|
|
|
|
|