joshua stein
0a10462896
VirtualConsole: use memmove for an overlapping copy
2019-12-20 20:02:45 +01:00
Andreas Kling
0adbacf59e
Kernel: Demangle userspace ELF symbols in backtraces
...
Turns out we can use abi::__cxa_demangle() for this, and all we need to
provide is sprintf(), realloc() and free(), so this patch exposes them.
We now have fully demangled C++ backtraces :^)
2019-11-27 14:06:24 +01:00
Andreas Kling
9a157b5e81
Revert "Kernel: Move Kernel mapping to 0xc0000000"
...
This reverts commit bd33c66273
.
This broke the network card drivers, since they depended on kmalloc
addresses being identity-mapped.
2019-11-23 17:27:09 +01:00
Jesse Buhagiar
bd33c66273
Kernel: Move Kernel mapping to 0xc0000000
...
The kernel is now no longer identity mapped to the bottom 8MiB of
memory, and is now mapped at the higher address of `0xc0000000`.
The lower ~1MiB of memory (from GRUB's mmap), however is still
identity mapped to provide an easy way for the kernel to get
physical pages for things such as DMA etc. These could later be
mapped to the higher address too, as I'm not too sure how to
go about doing this elegantly without a lot of address subtractions.
2019-11-22 16:23:23 +01:00
Andreas Kling
e33bbdb6ba
AK: Remove unused AK::not_implemented()
...
Whatever this was supposed to be, it was ironically... not implemented.
2019-11-06 13:58:08 +01:00
Drew Stratford
378480e8e4
TTY: Properly implement echo in VirtualConsole.
...
VirtualConsole::echo now actually echoes characters
instead of doing nothing.
2019-10-30 14:35:39 +01:00
Andreas Kling
4027a64fc5
Kernel: VirtualConsole can use kmalloc_eternal() for permanent stuff
...
Less pressure on kmalloc heap.
2019-10-18 14:14:54 +02:00
Andreas Kling
2f37fa487d
Kernel: Keep TTY names in character buffers instead of Strings
...
Just going over some little unnecessary little kmalloc allocations.
2019-10-18 14:13:43 +02:00
Andreas Kling
1c692e87a6
Kernel: Move kmalloc() into a Kernel/Heap/ directory
2019-09-16 09:01:44 +02:00
Andreas Kling
73fdbba59c
AK: Rename <AK/AKString.h> to <AK/String.h>
...
This was a workaround to be able to build on case-insensitive file
systems where it might get confused about <string.h> vs <String.h>.
Let's just not support building that way, so String.h can have an
objectively nicer name. :^)
2019-09-06 15:36:54 +02:00
Conrad Pankoff
879bc28e14
Kernel: Disable VGA console in graphical mode
2019-08-18 07:37:12 +02:00
Conrad Pankoff
ce8387d1ed
VirtualConsole: Only consume data from key-down events
2019-08-12 14:15:24 +02:00
Conrad Pankoff
dffdd5545a
Kernel: Restore alt+n hijacking for virtual console switching
2019-08-12 14:15:24 +02:00
Andreas Kling
27f699ef0c
AK: Rename the common integer typedefs to make it obvious what they are.
...
These types can be picked up by including <AK/Types.h>:
* u8, u16, u32, u64 (unsigned)
* i8, i16, i32, i64 (signed)
2019-07-03 21:20:13 +02:00
Andreas Kling
736092a087
Kernel: Move i386.{cpp,h} => Arch/i386/CPU.{cpp,h}
...
There's a ton of work that would need to be done before we could spin up on
another architecture, but let's at least try to separate things out a bit.
2019-06-07 20:02:01 +02:00
Andreas Kling
39d1a9ae66
Meta: Tweak .clang-format to not wrap braces after enums.
2019-06-07 17:13:23 +02:00
Andreas Kling
bc951ca565
Kernel: Run clang-format on everything.
2019-06-07 11:43:58 +02:00
Andreas Kling
b5b44a29bb
Replace various copies of parse_uint(String) with String::to_uint().
2019-05-08 19:21:51 +02:00
Andreas Kling
58240fdb33
Do a pass of compiler warning fixes.
...
This is really making me question not using 64-bit integers more.
2019-04-23 13:00:53 +02:00
Andreas Kling
ab94a6be00
AK: Add String::copy(BufferType) helper.
...
This will create a String from any BufferType that has data() and size().
2019-04-20 14:13:40 +02:00
Andreas Kling
88f03f86ff
Kernel: Have TTY subclasses cache their tty_name/pts_name.
2019-04-16 00:35:02 +02:00
Andreas Kling
ab43658c55
Kernel: Move devices into Kernel/Devices/.
2019-04-03 12:36:40 +02:00
Andreas Kling
9fca94269e
Kernel: Move TTY-related files into Kernel/TTY/.
2019-04-03 12:28:45 +02:00