Age | Commit message (Collapse) | Author |
|
The commit is self explanatory. It was a simple mistype that went
unnoticed for a while.
|
|
O_TRUNC as a mode does not seem to imply write permissions
but we still wish to truncate the file before giving back a file
descriptor. Therefore the kernel can now override any permission checks
if it wishes to do a truncation while still using the "ordinary path".
|
|
|
|
|
|
|
|
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
|
|
|
|
Any blocks with the value zero appear to indicate a region completly
filled to zeros.
I don't see this anywhere in the spec but it does make sense and the
behavior matches files that I have on my FreeBSD machine so I guess it
must be valid.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
This is not useful since 99% of the time I will have access to the
serial output. But it does look cool.
|
|
|
|
|
|
|
|
`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.
|
|
|
|
|
|
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.
|
|
This makes use of TSC and now provides a file system interface for
userland programs to change the system time.
|
|
|
|
|
|
|
|
|
|
|
|
There is no need for these to be seperate. They will probably move to
the same struct soon.
|
|
|