Baptiste Wicht
97adfcc7ae
Remove old debug message
2016-07-03 21:35:21 +02:00
Baptiste Wicht
2b975b4a1b
Offer more capabilities for the drivers
2016-07-03 21:31:44 +02:00
Baptiste Wicht
9d52e2390f
Add some data for the driver
2016-07-03 21:18:51 +02:00
Baptiste Wicht
fc90ab8d29
Detect network interfaces
2016-07-03 21:12:03 +02:00
Baptiste Wicht
dbffaf89dd
Publish PCI devices in sysfs
2016-07-03 18:59:22 +02:00
Baptiste Wicht
aa8a6ffb23
Support for : in keyboard
2016-07-03 18:58:04 +02:00
Baptiste Wicht
83cdf86326
Basic PCI detection
2016-07-03 18:46:20 +02:00
Baptiste Wicht
8819bb196f
Support for I/O functions inl/outl
2016-07-03 18:46:13 +02:00
Baptiste Wicht
160b78e168
Protect the kernel with Stack Smashing Protection
2016-07-03 16:22:10 +02:00
Baptiste Wicht
27dc7e25a0
Fix race condition in wait_for_termination
...
If preempted, it was possible for a process to be waiting forever
2016-07-03 15:59:54 +02:00
Baptiste Wicht
1c3af14f35
Exposes ATA information
2016-07-03 15:59:29 +02:00
Baptiste Wicht
3c38ead19f
Protect kernel allocations
...
This code is absolutely not-reentrant
2016-07-03 13:24:43 +02:00
Baptiste Wicht
e66314ae96
Save ALL registers
...
For some reasons, some registers were not saved :(
2016-07-03 13:24:18 +02:00
Baptiste Wicht
64c1312b28
Interrupt lock
...
This lock disable interrupts for the duration of the lock, thus
protecting non-reentrant code path
2016-07-03 13:23:47 +02:00
Baptiste Wicht
f7ba2bbe2d
Improve logging
2016-07-03 13:23:12 +02:00
Baptiste Wicht
9ceb950642
Log faults
...
In case of VESA problems, the error will be present in the log as
well
2016-07-03 13:21:26 +02:00
Baptiste Wicht
f47f6d30e7
Rename variable to avoid collision
2016-07-03 13:21:01 +02:00
Baptiste Wicht
b08ca6458f
Add get_phys() function
2016-07-03 11:55:59 +02:00
Baptiste Wicht
f1df24d78a
Preliminary support for Ctrl+C
2016-07-02 17:19:14 +02:00
Baptiste Wicht
34161e5ac3
Retab
2016-07-02 16:52:43 +02:00
Baptiste Wicht
44f94684f3
Better ATA delays
2016-07-02 16:50:45 +02:00
Baptiste Wicht
c06802ed30
Cleanup asm
2016-07-02 16:44:36 +02:00
Baptiste Wicht
40049a75cf
Update license copyright
2016-07-02 16:42:45 +02:00
Baptiste Wicht
be8eaf1493
Save the idle_pid
2016-07-02 16:34:02 +02:00
Baptiste Wicht
9cf3300665
Clean asserts
2016-07-02 16:33:05 +02:00
Baptiste Wicht
c3f68682fa
Fix include
2016-07-02 16:31:22 +02:00
Baptiste Wicht
64b2e8d77a
Add a way to get RFLAGS register value
2016-07-02 16:27:01 +02:00
Baptiste Wicht
b3f1b9bbcc
Interrupt handling
...
Intel interrupt gates are automatically disabling the interrupts.
So it is not necessary to disable them on IRQs and ISRs, but it is
necessary to enable them in system calls
2016-07-02 16:23:25 +02:00
Baptiste Wicht
ca1a2fdcc2
Comment
2016-07-02 16:12:09 +02:00
Baptiste Wicht
1f1b319bb4
Cleanup
2016-07-02 16:09:00 +02:00
Baptiste Wicht
1a0586d7b6
Cleanup and improve scheduling
2016-07-02 15:50:49 +02:00
Baptiste Wicht
e2a7f90342
Safer ATA driver
2016-07-02 15:37:09 +02:00
Baptiste Wicht
ea4fbf9a92
Better synchronization primitives
2016-07-02 15:36:58 +02:00
Baptiste Wicht
c2bdf94e5d
Remove note
2016-07-02 15:05:29 +02:00
Baptiste Wicht
7d7b131911
Qemu debugging via serial port
2016-07-02 15:05:08 +02:00
Baptiste Wicht
9efd6430c2
Basic serial support
2016-07-02 15:04:00 +02:00
Baptiste Wicht
cda223cc11
Empty keyboard buffer after enabling the IRQ
2016-07-02 14:48:28 +02:00
Baptiste Wicht
d3db4cfa97
Review order
2016-07-02 14:27:28 +02:00
Baptiste Wicht
f4e031d047
Review logging
...
Cleanup
Integrate virtual debugging
2016-07-02 14:08:53 +02:00
Baptiste Wicht
6beff2c17b
New debugging capabilities
...
While in Bochs, print to the Bochs console
2016-07-02 14:02:55 +02:00
Baptiste Wicht
74122d013e
Cleanup
2016-07-02 13:56:23 +02:00
Baptiste Wicht
1286e75791
Refactor
2016-07-02 13:33:17 +02:00
Baptiste Wicht
d1a7e2f26a
Fix bugs in the scheduler
2016-06-30 21:03:01 +02:00
Baptiste Wicht
60a721a05b
Add note
2016-06-30 21:01:32 +02:00
Baptiste Wicht
03c060af34
Simplify mutex
2016-06-30 21:01:11 +02:00
Baptiste Wicht
1ea3f90f4e
More safety for spinlock
2016-06-30 20:59:52 +02:00
Baptiste Wicht
674484f284
init task has the default number of rounds
2014-03-13 22:44:07 +01:00
Baptiste Wicht
d56ad336c4
Add note
2014-03-13 22:42:12 +01:00
Baptiste Wicht
5993ad3504
Reduce the number of write()
2014-03-13 22:35:31 +01:00
Baptiste Wicht
7af924f154
Store early logs to file
2014-03-13 22:30:40 +01:00