summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2019-05-17Kernel: Use a RangeAllocator for kernel-only virtual space allocation too.Andreas Kling
2019-05-17Kernel: Remove Process::m_next_address.Andreas Kling
This isn't needed now that we have RangeAllocator. :^)
2019-05-17Kernel: Make Thread::kernel_stack_base() work for kernel processes.Andreas Kling
2019-05-17Kernel: Implement a simple virtual address range allocator.Andreas Kling
This replaces the previous virtual address allocator which was basically just "m_next_address += size;" With this in place, virtual addresses can get reused, which cuts down on the number of page tables created. When we implement ASLR some day, we'll probably have to do page table deallocation, but for now page tables are only deallocated once the process dies.
2019-05-17Always dump QEMU CPU state on CPU reset.Andreas Kling
2019-05-16WindowServer: Don't treat bottom titlebar edge as part of the border.Andreas Kling
We were allowing initiation of resize from the bottom titlebar edge since everything inside the window frame that's not either inside the title bar, or inside the window content, is considered the border.
2019-05-16Userland: Add /bin/whoamiAndreas Kling
2019-05-16Terminal: Set original window title to "Terminal"Andreas Kling
Don't rely on the shell setting the window title using escape sequences.
2019-05-16WindowServer: Fill unbacked windows with their background color.Andreas Kling
This avoids flashing a content-less window frame during client startup.
2019-05-16Kernel: Always dump_backtrace() on process crash.Andreas Kling
2019-05-16Added CProcessStatisticsReader to avoid having to parse /proc/all (#35)GuillaumeGas
* Added CProcessStatisticsReader to avoid having to parse /proc/all * Took @awesomekling's feedbacks into account * Fixed indentation and replaced tabs by spaces
2019-05-16Kernel: Symbolicate userspace backtraces using ELFLoader.Andreas Kling
Stash away the ELFLoader used to load an executable in Process so we can use it for symbolicating userspace addresses later on. This will make debugging userspace programs a lot nicer. :^)
2019-05-16LibC: Don't clobber errno in dbgprintf().Andreas Kling
2019-05-16FileSystem: fix errno on lseek() beyond the bounds of a fileRobin Burchell
These are all EINVAL. Also remove bogus assert on metadata.size.
2019-05-16LibC/Shell: Add unsetenv(), and unset builtin calling it in Shell.Robin Burchell
2019-05-16LibC: Change putenv (and getenv) to not copy, but directly return the ↵Robin Burchell
environ values. This is in keeping with how putenv should function. It does mean that the shell's export command now leaks, but that's not a difficult fix. Contributes to #29.
2019-05-16Kernel: Simplify ELF loader by removing the allocator indirections.Andreas Kling
2019-05-16GFilePicker: Remove the frame around the little toolbar.Andreas Kling
2019-05-16GButton: Only draw focus rect if there is a caption text.Andreas Kling
2019-05-16LibC: Add struct timespec to time.hRobin Burchell
2019-05-16LibC: Allow {AF,PF}_UNIX as well as {AF,PF}_LOCALRobin Burchell
Seems that these are equivilent. POSIX specifies _LOCAL, but a lot of software uses _UNIX.
2019-05-16LibC: Add INET_ADDRSTRLEN defineRobin Burchell
2019-05-16LibC: Define a SOMAXCONN value in socket.hRobin Burchell
No idea if this is sensible; but some software will look for it.
2019-05-16LibC: Implement str{n}casecmpRobin Burchell
2019-05-16Kernel: Simplify dump_backtrace() API for clients.Andreas Kling
It makes no sense that clients had to worry about whether or not KSyms were loaded.
2019-05-16Only the kernel needs to build with default includes disabled.Andreas Kling
2019-05-16TextEditor: Make use of GFilePicker to select a file to openRobin Burchell
2019-05-16GFilePicker: Make the path selected accessible externallyRobin Burchell
2019-05-16Kernel: Move Inode to its own files.Andreas Kling
2019-05-16GTextEditor: Introduce triple click to select allRobin Burchell
2019-05-16WSWindowManager: Fix a small whoopsie with double click deliveryRobin Burchell
We must reset the click clock to invalid after delivering the double click event. Otherwise, a subsequent click will make us (incorrectly) deliver another double click.
2019-05-16GTextEditor: Minor cleanupRobin Burchell
Remove an unnecessary layer of nesting
2019-05-16WindowServer/GMenu: Adjust the popup position to fit the window inside the ↵Robin Burchell
screen Rather than passing a "top_anchored" bool. Fixes #22.
2019-05-15Move double click events from LibGUI to the window serverRobin Burchell
2019-05-15Kernel: Add a beep() syscall that beeps the PC speaker.Andreas Kling
Hook this up in Terminal so that the '\a' character generates a beep. Finally emit an '\a' character in the shell line editing code when backspacing at the start of the line.
2019-05-15ReadMe: Add build/run instructions from "old" wikiRobin Burchell
Saves having to go hunting for them
2019-05-15makeall: Use set -e to exit on failureRobin Burchell
And pretty the building/installing up a little, rather than a huge chain of &&
2019-05-15makeall: Like BuildIt, respect MAKEJOBSRobin Burchell
2019-05-15BuildIt: Allow specifying MAKEJOBS rather than forcing to nprocsRobin Burchell
2019-05-15UseIt: allow sourcing from outside the Toolchain dirRobin Burchell
2019-05-15BuildIt: use set -e to fail immediately on errorRobin Burchell
This saves time if something goes wrong very early in the build process.
2019-05-15Documentation: Add a brief description of Serenity's smart pointer types.Andreas Kling
2019-05-15GButton: Allow triggering a "click" by pressing Return when focused.Andreas Kling
2019-05-15LibGUI: Support cycling through focusable widgets with Tab and Shift-Tab.Andreas Kling
2019-05-14Kernel: Encapsulate the Region's COW map a bit better.Andreas Kling
2019-05-14ProcessManager: Keep /proc/all open to reduce CPU impact of ProcessManager.Andreas Kling
2019-05-14GEventLoop: Rename s_event_fd => s_windowserver_fd.Andreas Kling
2019-05-14malloc: Make it possible to recycle big allocation blocks as well.Andreas Kling
This patch makes us recycle up to 8 blocks of 4KB size. This should probably be extended to handle other sizes.
2019-05-14LibCore: Avoid a big malloc in CIODevice's internal buffering.Andreas Kling
This heap allocation was totally avoidable and can be replaced by a stack buffer instead. Dodges a bunch of mmap() traffic.
2019-05-14Kernel: Make allocate_kernel_region() commit the region automatically.Andreas Kling
This means that kernel regions will eagerly get physical pages allocated. It would be nice to zero-fill these on demand instead, but that would require a bunch of MemoryManager changes.