Commit Graph

  • 05f2838df4 Add UDP reception support Mark 2019-11-02 22:48:38 +02:00
  • 6082e68bc0 rtl8139: Receive packets Mark 2019-11-01 14:56:31 +02:00
  • b1ffb2afd9 Add LAPIC Timer calibration code Mark 2019-11-01 12:27:58 +02:00
  • 1a6fb5df17 Add SCI handler wrapper Mark 2019-11-01 10:48:10 +02:00
  • 601be56c33 Add a context to IRQ handler so there's no need for globals Mark 2019-11-01 10:32:38 +02:00
  • 45ad5614a7 Add brk() system call Mark 2019-10-30 12:33:14 +02:00
  • d6e0451abf Added function to iret from exit() syscall Mark 2019-10-30 11:03:46 +02:00
  • 1a334aaafb Added errno.h, fixed vfs mapper find() Mark 2019-10-29 15:21:14 +02:00
  • 69396c1d60 Add open()/stat()/close() syscalls Mark 2019-10-29 14:02:36 +02:00
  • a36365c833 Fix NODE_MAPPER reparenting error Mark 2019-10-29 13:54:07 +02:00
  • b02354e766 Merge userspace makefiles Mark 2019-10-29 12:30:20 +02:00
  • b846ee2ad4 Add sys_exit() and fix problem with %rax getting clobbered Mark 2019-10-29 11:29:08 +02:00
  • 5a3b8621bc Added libc crtX.o Mark 2019-10-29 10:26:11 +02:00
  • 5d738d33b2 Add libc subproject Mark 2019-10-28 18:02:56 +02:00
  • 8c8bfabb39 Added RTC driver Mark 2019-10-28 17:30:35 +02:00
  • 7686fa44cf Use ring buffer for keyboard input Mark 2019-10-26 16:14:49 +03:00
  • 84464623ff Keyboard input and write syscalls (VFS) Mark 2019-10-25 16:26:44 +03:00
  • d94c4c879f Merge branch 'master' into doing-stuff Mark 2019-10-25 14:21:46 +03:00
  • c19e386edb Add test syscall: works Mark 2019-10-25 14:09:03 +03:00
  • 91373c5fed Execute userspace init! Mark 2019-10-25 13:54:55 +03:00
  • 0d1c8a1bdb Add tarfs/initrd support Mark 2019-10-25 11:46:56 +03:00
  • 822120af3a Add ram block device + tarfs Mark 2019-10-25 11:25:22 +03:00
  • 1040973125 Integrate VFS/ext2 code Mark 2019-10-25 11:20:30 +03:00
  • 6033a7c2d5 Fix RS232_COM0 -> RS232_COM1 Mark 2019-10-25 09:42:45 +03:00
  • 8051cf953c Add global constructor invocation on boot Mark 2019-10-24 21:50:58 +03:00
  • 11cfcbf1c6 Add device class/ID handlers to PCI Mark 2019-10-24 17:50:36 +03:00
  • 2a444c4248 Added partition reading Mark 2019-10-24 17:26:19 +03:00
  • 61b1477873 Add partition enumeration for SATA drives (MBR) Mark 2019-10-24 15:30:05 +03:00
  • dae945b113 Add [init] task Mark 2019-10-24 12:43:53 +03:00
  • 778eec2582 Add AHCI PCI IRQ handling Mark 2019-10-23 18:21:42 +03:00
  • 4067092423 Fix legacy IRQ -> I/O APIC GSI mapping Mark 2019-10-23 15:46:48 +03:00
  • 6798480797 Better IRQ handling Mark 2019-10-23 15:40:32 +03:00
  • 1af3d0dd78 Add IDE ATA read using PIO/DMA Mark 2019-10-22 01:09:22 +03:00
  • 9acc2c6064 IDE ATA/ATAPI device identification Mark 2019-10-21 22:58:43 +03:00
  • e210b9c60e Added AHCI SATA sector reading Mark 2019-10-21 16:55:20 +03:00
  • 61dd73b79f Add AHCI SATA device enumeration + SATA device IDENTIFY Mark 2019-10-21 16:14:34 +03:00
  • 2d41d1c27a Fix heap links Mark 2019-10-20 18:12:52 +03:00
  • 9c31540b45 Add AHCI device _describe() Mark 2019-10-20 16:36:39 +03:00
  • 902a16771d Cleanup PCI address scheme Mark 2019-10-18 20:23:57 +03:00
  • d2711b590c Add readme Mark 2019-10-18 17:15:40 +03:00
  • b15ff087d6 Add serial input support (COM1) Mark 2019-10-18 16:57:58 +03:00
  • d2b2489234 Comment USB devices for now Mark 2019-10-18 14:43:32 +03:00
  • 178add3f33 Messing around with PCI Mark 2019-10-18 14:41:01 +03:00
  • 59277a3ad5 Remove $PIR tables Mark 2019-10-17 14:28:51 +03:00
  • 22bf2f1cf1 Integrate ACPICA into kernel, obtain PCI Interrupt routing table Mark 2019-10-17 14:24:25 +03:00
  • 944f3122a1 Fix invalid kmalloc Mark 2019-10-16 23:15:59 +03:00
  • 1f2135342c Fix Mark 2019-10-16 15:37:45 +03:00
  • f053e0a87b Various Mark 2019-10-16 15:34:39 +03:00
  • 6fe3cfc690 Some stuff on PCI and IRQ routing Mark 2019-10-15 11:55:40 +03:00
  • a420918e65 Move thread init to thread.c Mark 2019-10-14 14:05:27 +03:00
  • 62079a5b7f Idle task becomes truely idle Mark 2019-10-14 13:29:42 +03:00
  • 5f820044e5 Syscalls totally seem to work Mark 2019-10-14 13:27:39 +03:00
  • 3dfa5a54f4 Fix syscalls Mark 2019-10-13 18:25:22 +03:00
  • 2f3aee2d46 SYSCALL looks interruptible enough to me Mark 2019-10-12 19:27:10 +03:00
  • 64084eb1e4 Enable SMP-compatible syscall entry Mark 2019-10-12 17:57:39 +03:00
  • bfcc6d7bdf Add phys init Mark 2019-10-12 13:57:32 +03:00
  • 6297d1bfb2 Bring old code here Mark 2019-10-12 13:40:48 +03:00
  • 65dfdaa8ae Remove userspace idle code Mark 2019-10-12 12:34:49 +03:00
  • 48d47dea94 Now with userspace Mark 2019-10-11 21:16:58 +03:00
  • 4fcda2bc68 Make gdt per-cpu Mark 2019-10-11 20:46:38 +03:00
  • 09bb6c4be7 Add _irqsave variant of spinlocks Mark 2019-10-11 19:55:31 +03:00
  • 3e63a77c9f Add testing sched with idle tasks Mark 2019-10-11 19:32:41 +03:00
  • 0e287e59bd Add %gs/cpu offsets to asm headers Mark 2019-10-11 16:20:49 +03:00
  • 31e8fd698e Add per-cpu tick counters Mark 2019-10-11 14:23:10 +03:00
  • 2c4854e23f Move struct cpu to cpu.h Mark 2019-10-11 14:09:41 +03:00
  • 416cad5d18 Move SMP init to smp.c, clean up Local APIC Mark 2019-10-11 14:02:04 +03:00
  • 55aa020738 [smp-broken] Add timer initialization Mark 2019-10-10 20:08:23 +03:00
  • 9ef897d7b9 Add testing spinlock Mark 2019-10-10 19:29:05 +03:00
  • b4f0aa7279 Add an option for building without SMP support Mark 2019-10-10 18:06:26 +03:00
  • 4a737e76df Add MAX_SMP option for AMD64 Mark 2019-10-10 17:55:05 +03:00
  • fe4d07e9c0 move makefiles Mark 2019-10-10 17:43:03 +03:00
  • 35a5b787d7 Move /etc Mark 2019-10-10 17:40:06 +03:00
  • 1e55746e18 Update config Mark 2019-10-10 16:44:22 +03:00
  • 75d48ffdbc Add support for I/O APIC with testing kb mapping Mark 2019-10-10 16:40:19 +03:00
  • e0039376f3 Fix con scrolling Mark 2019-10-10 15:38:22 +03:00
  • cb01e8f8da Move timer init outside the APIC.c Mark 2019-10-10 15:34:58 +03:00
  • 84497ba98e Add IRQ tracing, fix incorrent LAPIC ID code Mark 2019-10-10 13:50:25 +03:00
  • 2e320b5974 Split IRQ handling macros Mark 2019-10-10 11:50:04 +03:00
  • a06bccff5f Remap PIC properly, add stack fuckup check in irq0 Mark 2019-10-10 11:41:19 +03:00
  • 1288561b0c Added 0xB8000 console for testing Mark 2019-10-10 10:34:38 +03:00
  • 992e08a93a Added AP initialization code Mark 2019-10-09 23:45:19 +03:00
  • c3cc760b2c Working LAPIC timer Mark 2019-10-09 18:24:28 +03:00
  • c345c3db26 Restore headers Mark 2019-10-08 12:04:46 +03:00
  • 71eeb5d282 Remove everything Mark 2019-10-04 16:23:18 +03:00
  • d0c709f772 Testing tty0 Mark 2019-10-02 19:19:20 +03:00
  • 13a2e695b5 Fix problem with sections loading one over other Mark 2019-10-02 16:57:29 +03:00
  • 1376c18984 [amd64] Make IRQs not crash Mark 2019-10-01 18:00:46 +03:00
  • dff06deb0f Seems like the problem with syscall/IF is fixed Mark 2019-10-01 17:28:27 +03:00
  • 24ff3737d4 [amd64] Elf loading kinda works Mark 2019-10-01 16:18:09 +03:00
  • 93f45d92c7 [tar] Remove useless warning Mark 2019-10-01 14:32:32 +03:00
  • dd1808b157 Add tarfs/ram-based initrd with file reading Mark 2019-10-01 14:30:53 +03:00
  • 47485a3876 Add initrd building Mark 2019-10-01 12:53:51 +03:00
  • 12fb906ccc [amd64] Fixed problem with invalid upper mapping Mark 2019-10-01 12:37:27 +03:00
  • f4c3fb30b7 [amd64] Move kidle init to a function Mark 2019-09-30 12:10:33 +03:00
  • 93516ee40f Integrate vfs code into the kernel (just make it build yet) Mark 2019-09-30 11:47:51 +03:00
  • a71a024348 Add size pretty-printing Mark 2019-09-30 10:39:38 +03:00
  • 6f35ab11a5 [amd64] Remove test module Mark 2019-09-24 18:21:40 +03:00
  • b0b7667ec3 [amd64] Add initrd loading support Mark 2019-09-24 18:15:17 +03:00
  • 131f6963ab Add syscall description file Mark 2019-09-23 12:21:57 +03:00
  • 789a3ee1a3 [amd64] Move arch/amd64 -> sys/amd64 Mark 2019-09-23 11:40:44 +03:00