Andreas Kling
9da62f52a1
Kernel: Use the Multiboot memory map info to inform our paging setup.
...
This makes it possible to run Serenity with more than 64 MB of RAM.
Because each physical page is represented by a PhysicalPage object, and such
objects are allocated using kmalloc_eternal(), more RAM means more pressure
on kmalloc_eternal(), so we're gonna need a better strategy for this.
But for now, let's just celebrate that we can use the 128 MB of RAM we've
been telling QEMU to run with. :^)
2019-06-09 11:48:58 +02:00
Andreas Kling
8258b699db
Kernel: Use StringView more in Inode and subclasses.
2019-06-09 10:25:19 +02:00
Andreas Kling
cdb44be703
StringView: Store a StringImpl* rather than a String*.
2019-06-08 23:55:13 +02:00
Andreas Kling
6a51093ab1
AK: Add String::operator==(const char*).
...
Without this function, comparing a String to a const char* will instantiate
a temporary String which is obviously not great.
Also add some missing null checks to StringView::operator==(const char*).
2019-06-08 18:32:09 +02:00
Conrad Pankoff
8b1154f5f2
Kernel: Implement serial port driver
...
This implements a basic 8250 UART serial port driver. It does not
currently handle (or enable) interrupts, nor any runtime configuration.
2019-06-08 18:12:20 +02:00
Conrad Pankoff
7b04c7dc48
Userland: Implement -c [characters] option for head
2019-06-08 18:01:06 +02:00
Conrad Pankoff
842bf96e2c
Kernel: Fix booting from "inactive" MBR partitions
...
Apparently you can boot from any MBR partition, not just the one labeled
as "bootable" or "active". The only ones you don't want to boot from are
the ones that don't exist.
2019-06-08 17:59:17 +02:00
Andreas Kling
de65c960e9
Kernel: Tweak some String&& => const String&.
...
String&& is just not very practical. Also return const String& when the
returned string is a member variable. The call site is free to make a copy
if he wants, but otherwise we can avoid the retain count churn.
2019-06-07 20:58:12 +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
5bce004d84
Kernel: The kernel will never call mmx_memcpy() so prune it.
2019-06-07 19:32:12 +02:00
Andreas Kling
891d4c4834
Kernel: Qualify a bunch of #include statements.
2019-06-07 19:29:34 +02:00
Andreas Kling
de9edb0169
StringView: operator==(const char*) needs to stop when the view ends.
...
We were comparing past the end of the view, which was clearly not correct.
2019-06-07 19:22:58 +02:00
Andreas Kling
f90d75e5b9
Meta: Time for a new screenshot to keep things fresh. :^)
2019-06-07 18:14:13 +02:00
Andreas Kling
191112e457
Meta: Tweak ReadMe.
2019-06-07 17:57:03 +02:00
Andreas Kling
a0bde822ee
AK: Add IterationDecision.h.
2019-06-07 17:14:16 +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
9145917bf0
ELF: Run clang-format on everything.
2019-06-07 17:12:30 +02:00
Andreas Kling
e42c3b4fd7
Kernel: Rename LinearAddress => VirtualAddress.
2019-06-07 12:56:50 +02:00
Andreas Kling
0ed89440f1
ProcessManager+top: Rename "linear" size to "virtual" size.
...
I originally called it "linear" because that's how the Intel manual names
virtual addresses in many cases. I'm ready to accept that most people know
this as "virtual" so let's just call it that.
2019-06-07 12:44:29 +02:00
Andreas Kling
54448b5d24
Kernel: Syscall header should forward-declare timeval with C linkage.
2019-06-07 11:52:27 +02:00
Andreas Kling
2c70ae0418
Demos: Run clang-format on everything.
2019-06-07 11:50:05 +02:00
Andreas Kling
3ca332af42
LibM: Run clang-format on everything.
2019-06-07 11:49:47 +02:00
Andreas Kling
b07bbf383d
Userland: Run clang-format on everything.
2019-06-07 11:49:31 +02:00
Andreas Kling
f7ede145b4
Shell: Run clang-format on everything.
2019-06-07 11:49:21 +02:00
Andreas Kling
46527b72d7
LibC: Run clang-format on everything.
2019-06-07 11:49:03 +02:00
Andreas Kling
892acfb10d
VisualBuilder: Run clang-format on everything.
2019-06-07 11:48:27 +02:00
Andreas Kling
fba2c971e7
Games: Run clang-format on everything.
2019-06-07 11:48:15 +02:00
Andreas Kling
fd604a7c68
Applications: Run clang-format on everything.
2019-06-07 11:48:03 +02:00
Andreas Kling
e09c3a1ae8
SystemServer: Run clang-format on everything.
2019-06-07 11:47:46 +02:00
Andreas Kling
8358833bc8
WindowServer: Run clang-format on everything.
2019-06-07 11:47:19 +02:00
Andreas Kling
76b3337498
SharedGraphics: Run clang-format on everything.
2019-06-07 11:46:55 +02:00
Andreas Kling
7770d6a09d
LibCore: Run clang-format on everything.
2019-06-07 11:46:37 +02:00
Andreas Kling
b34b084619
AK: Run clang-format on everything.
2019-06-07 11:46:22 +02:00
Andreas Kling
7ad8790d80
LibGUI: Run clang-format on everything.
2019-06-07 11:46:02 +02:00
Andreas Kling
bc951ca565
Kernel: Run clang-format on everything.
2019-06-07 11:43:58 +02:00
Andreas Kling
98eeb8f22d
AK: Rename printf.cpp to PrintfImplementation.h.
2019-06-07 11:41:11 +02:00
Andreas Kling
1d5a3507b2
Userland: Add a little test program for the alarm() syscall.
2019-06-07 11:30:22 +02:00
Andreas Kling
d194ce828d
Kernel: Implement the alarm() syscall.
2019-06-07 11:30:07 +02:00
Andreas Kling
a2a6bb93bc
GScrollBar: Use increment/decrement naming consistently.
2019-06-07 10:56:30 +02:00
Andreas Kling
164742f316
GScrollBar: Keep scrolling while pushing down increment/decrement button.
2019-06-07 10:43:10 +02:00
Andreas Kling
0ece5fee14
GTextEditor: Set the vertical scrollbar step size to the line height.
...
This makes us scroll one line at a time.
2019-06-07 10:42:59 +02:00
Andreas Kling
1d7b89cd1c
Base: Let's have "te" as a symlink alias for TextEditor for now.
2019-06-07 10:12:04 +02:00
Andreas Kling
08cd75ac4b
Kernel: Rename FileDescriptor to FileDescription.
...
After reading a bunch of POSIX specs, I've learned that a file descriptor
is the number that refers to a file description, not the description itself.
So this patch renames FileDescriptor to FileDescription, and Process now has
FileDescription* file_description(int fd).
2019-06-07 09:36:51 +02:00
Andreas Kling
69a6ce90df
AK: Add a ScopeGuard helper that invokes a callback when destroyed.
...
This is useful when you want to ensure some little thing happens when you
exit a certain scope.
This patch makes use of it in LibC's netdb code to make sure we close the
connection to the LookupServer.
2019-06-07 09:19:15 +02:00
Andreas Kling
4edc73ad1f
Terminal: Use the visual bell by default.
2019-06-07 08:45:39 +02:00
Christopher Dumas
0491d34d0c
LookupServer: use /etc/hosts even for reverse lookups
2019-06-07 08:35:41 +02:00
Christopher Dumas
70a37f9a26
LookupServer: Load hostnames
2019-06-07 08:35:41 +02:00
Christopher Dumas
4f62176c3e
LookupServer: Clang-Format
2019-06-07 08:35:41 +02:00
Andreas Kling
59c37363b6
TTY: Generate SIGTSTP if cc[VSUSP] is pressed.
...
Fixes #207 .
2019-06-06 20:31:49 +02:00
Ben Sloane
9687f1801b
tail: Default tail behavior with no arguments ( #209 )
...
Make tail assume you wanted 10 lines of output if no -n option was provided.
2019-06-06 20:28:58 +02:00