1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 11:48:10 +00:00
serenity/Kernel
Andreas Kling 0aaec6b19a Support resizing the Terminal app.
I set it up so that TIOCSWINSZ on a master PTY gets forwarded to the slave.
This feels intuitively right. Terminal can then use that to inform the shell
or whoever is inside the slave that the window size has changed.

TIOCSWINSZ also triggers the generation of a SIGWINCH signal. :^)
2019-02-20 23:38:20 +01:00
..
Boot Bootloader: Bump sector count once again. 2019-02-12 12:09:50 +01:00
.bochsrc Kernel: Much improved BochsVGA (BXVGA) support. 2019-02-06 10:17:26 +01:00
.gitignore Add basic automatic dependency management to Makefiles. 2019-02-02 04:41:59 +01:00
_start.cpp Import the "gerbert" kernel I worked on earlier this year. 2018-10-16 11:02:00 +02:00
Assertions.h Add a simple IDEDiskDevice class that implements DiskDevice from VFS. 2018-10-16 14:17:43 +02:00
BlockDevice.cpp Kernel: Add empty BlockDevice class. 2019-02-16 00:52:58 +01:00
BlockDevice.h Kernel: Make BochsVGADevice a BlockDevice and support mmapping it. 2019-02-16 09:57:42 +01:00
BXVGADevice.cpp Kernel: Rename BochsVGADevice to BXVGADevice. 2019-02-17 08:41:05 +01:00
BXVGADevice.h Kernel: Rename BochsVGADevice to BXVGADevice. 2019-02-17 08:41:05 +01:00
CharacterDevice.cpp Kernel: Add empty BlockDevice class. 2019-02-16 00:52:58 +01:00
CharacterDevice.h Kernel: Make BochsVGADevice a BlockDevice and support mmapping it. 2019-02-16 09:57:42 +01:00
CMOS.cpp Make bash-2.05b build with minimal changes. 2018-11-17 00:14:07 +01:00
CMOS.h Make bash-2.05b build with minimal changes. 2018-11-17 00:14:07 +01:00
Console.cpp Expose the kernel log buffer through /proc/dmesg. 2019-01-28 22:40:55 +01:00
Console.h Use modern C++ attributes instead of __attribute__ voodoo. 2019-02-15 12:30:48 +01:00
Device.cpp Kernel: Have devices automagically register themselves with the VFS. 2019-02-17 10:38:07 +01:00
Device.h Kernel: Have devices automagically register themselves with the VFS. 2019-02-17 10:38:07 +01:00
DevPtsFS.cpp Kernel: Add proper locking to SynthFS and stop disabling interrupts. 2019-02-07 10:47:11 +01:00
DevPtsFS.h Use modern C++ attributes instead of __attribute__ voodoo. 2019-02-15 12:30:48 +01:00
DiskBackedFileSystem.cpp Kernel: Update block cache on write. 2019-02-11 13:18:24 +01:00
DiskBackedFileSystem.h Big, possibly complete sweep of naming changes. 2019-01-31 17:31:23 +01:00
DiskDevice.cpp Big, possibly complete sweep of naming changes. 2019-01-31 17:31:23 +01:00
DiskDevice.h Move VFS sources into Kernel/. 2019-01-23 05:14:00 +01:00
DoubleBuffer.cpp Catch anyone trying to use a DoubleBuffer with interrupts disabled. 2019-01-16 01:58:11 +01:00
DoubleBuffer.h Kernel: When a lock is busy, donate remaining process ticks to lock holder. 2019-02-07 11:14:58 +01:00
elf.h Make it possible to build the Kernel on a macOS host. 2018-12-02 23:34:50 +01:00
ELFImage.cpp Big, possibly complete sweep of naming changes. 2019-01-31 17:31:23 +01:00
ELFImage.h Big, possibly complete sweep of naming changes. 2019-01-31 17:31:23 +01:00
ELFLoader.cpp Big, possibly complete sweep of naming changes. 2019-01-31 17:31:23 +01:00
ELFLoader.h Use the entry point address from the ELF header instead of looking up _start. 2018-12-29 03:28:55 +01:00
ext2_fs.h Move VFS sources into Kernel/. 2019-01-23 05:14:00 +01:00
ext2_types.h Move VFS sources into Kernel/. 2019-01-23 05:14:00 +01:00
Ext2FileSystem.cpp Ext2FS: Remove the inode cache lock in favor of one big lock instead. 2019-02-20 21:58:55 +01:00
Ext2FileSystem.h Ext2FS: Remove the inode cache lock in favor of one big lock instead. 2019-02-20 21:58:55 +01:00
FIFO.cpp Allow character devices to block write attempts until there is more space. 2019-01-15 09:17:22 +01:00
FIFO.h Move VFS sources into Kernel/. 2019-01-23 05:14:00 +01:00
FileBackedDiskDevice.cpp Big, possibly complete sweep of naming changes. 2019-01-31 17:31:23 +01:00
FileBackedDiskDevice.h Move VFS sources into Kernel/. 2019-01-23 05:14:00 +01:00
FileDescriptor.cpp Kernel: Give each FileDescriptor a chance to co-open sockets. 2019-02-17 11:00:35 +01:00
FileDescriptor.h Kernel: Give each FileDescriptor a chance to co-open sockets. 2019-02-17 11:00:35 +01:00
FileSystem.cpp Kernel: More work on sockets. Fleshing out connect(). 2019-02-14 15:55:19 +01:00
FileSystem.h Kernel: More work on sockets. Fleshing out connect(). 2019-02-14 15:55:19 +01:00
FullDevice.cpp Move VFS sources into Kernel/. 2019-01-23 05:14:00 +01:00
FullDevice.h Move VFS sources into Kernel/. 2019-01-23 05:14:00 +01:00
i386.cpp Kernel: Reduce code duplication in exception handlers. 2019-02-20 12:28:41 +01:00
i386.h Use modern C++ attributes instead of __attribute__ voodoo. 2019-02-15 12:30:48 +01:00
i8253.cpp Clean up some uninteresting log spam. 2019-02-06 11:32:23 +01:00
i8253.h Implement event loop timers. 2019-02-01 03:50:06 +01:00
IDEDiskDevice.cpp Fix some compilation warnings. 2019-02-12 12:11:22 +01:00
IDEDiskDevice.h IDEDiskDevice: Detect disk errors and report failure to clients. 2019-02-11 11:38:14 +01:00
init.cpp Kernel: Run the sync daemon once every second. 2019-02-17 15:18:35 +01:00
InodeIdentifier.h Big, possibly complete sweep of naming changes. 2019-01-31 17:31:23 +01:00
InodeMetadata.h Kernel: Make BochsVGADevice a BlockDevice and support mmapping it. 2019-02-16 09:57:42 +01:00
IO.h Kernel: Much improved BochsVGA (BXVGA) support. 2019-02-06 10:17:26 +01:00
IRQHandler.cpp More coding style changes. 2018-12-03 00:39:25 +01:00
IRQHandler.h More coding style changes. 2018-12-03 00:39:25 +01:00
kassert.h Use modern C++ attributes instead of __attribute__ voodoo. 2019-02-15 12:30:48 +01:00
KeyboardDevice.cpp Kernel: Rename Keyboard to KeyboardDevice. 2019-02-17 08:39:09 +01:00
KeyboardDevice.h Kernel: Rename Keyboard to KeyboardDevice. 2019-02-17 08:39:09 +01:00
KeyCode.h Move WindowServer to userspace. 2019-02-17 00:13:47 +01:00
kmalloc.cpp Kernel: Shrink kmalloc() chunk size from 128 to 64. 2019-02-17 13:41:15 +01:00
kmalloc.h Use modern C++ attributes instead of __attribute__ voodoo. 2019-02-15 12:30:48 +01:00
kprintf.cpp Big, possibly complete sweep of naming changes. 2019-01-31 17:31:23 +01:00
kprintf.h Use modern C++ attributes instead of __attribute__ voodoo. 2019-02-15 12:30:48 +01:00
kstdio.h Fix Userland build. 2019-01-13 04:31:16 +01:00
KSyms.cpp Use modern C++ attributes instead of __attribute__ voodoo. 2019-02-15 12:30:48 +01:00
KSyms.h Use modern C++ attributes instead of __attribute__ voodoo. 2019-02-15 12:30:48 +01:00
ktime.h Fix some minor build warnings. 2018-10-17 16:48:43 +02:00
Limits.h Kernel: Get rid of Unix namespace. 2019-01-23 06:57:00 +01:00
linker.ld Import the "gerbert" kernel I worked on earlier this year. 2018-10-16 11:02:00 +02:00
LocalSocket.cpp Kernel: Give each FileDescriptor a chance to co-open sockets. 2019-02-17 11:00:35 +01:00
LocalSocket.h Kernel: Give each FileDescriptor a chance to co-open sockets. 2019-02-17 11:00:35 +01:00
makeall.sh Move WindowServer to userspace. 2019-02-17 00:13:47 +01:00
Makefile Prune compiler flags a bit. Let's go with -march=i686 for now. 2019-02-17 15:17:21 +01:00
makeuserland.sh Move apps into a top-level Applications/ directory. 2019-02-10 08:35:01 +01:00
MasterPTY.cpp Support resizing the Terminal app. 2019-02-20 23:38:20 +01:00
MasterPTY.h Support resizing the Terminal app. 2019-02-20 23:38:20 +01:00
MemoryManager.cpp Kernel: If someone else zero-fills a shared VMO page, don't freak out. 2019-02-20 21:33:07 +01:00
MemoryManager.h Add ability to switch video modes from the system menu. 2019-02-17 13:12:59 +01:00
mkf.sh Start working on a simple graphical font editor. 2019-02-02 08:07:06 +01:00
mkmap.sh Omit duplicate lines from the ksyms map. 2018-12-03 02:23:49 +01:00
NullDevice.cpp Kernel: Make sure processes always start out with fds 0, 1 and 2 open. 2019-02-12 11:25:25 +01:00
NullDevice.h Kernel: Report the correct name for NullDevice. 2019-02-17 09:40:19 +01:00
PCI.cpp Kernel: Much improved BochsVGA (BXVGA) support. 2019-02-06 10:17:26 +01:00
PCI.h Kernel: Much improved BochsVGA (BXVGA) support. 2019-02-06 10:17:26 +01:00
PIC.cpp Big, possibly complete sweep of naming changes. 2019-01-31 17:31:23 +01:00
PIC.h Big, possibly complete sweep of naming changes. 2019-01-31 17:31:23 +01:00
Process.cpp Support resizing the Terminal app. 2019-02-20 23:38:20 +01:00
Process.h Kernel: Fix String leaks in exec(). 2019-02-17 10:18:25 +01:00
ProcFS.cpp Kernel: Remove tracking of bitmap memory. 2019-02-17 01:16:38 +01:00
ProcFS.h Use modern C++ attributes instead of __attribute__ voodoo. 2019-02-15 12:30:48 +01:00
PS2MouseDevice.cpp PS2MouseDevice: Add current buffer size to debug logging. 2019-02-12 09:22:55 +01:00
PS2MouseDevice.h Move VFS sources into Kernel/. 2019-01-23 05:14:00 +01:00
PTYMultiplexer.cpp Kernel: When a lock is busy, donate remaining process ticks to lock holder. 2019-02-07 11:14:58 +01:00
PTYMultiplexer.h Bootloader: Locate the kernel's data segment and clear it. 2019-02-06 16:02:10 +01:00
Queue.h Big, possibly complete sweep of naming changes. 2019-01-31 17:31:23 +01:00
RandomDevice.cpp Move VFS sources into Kernel/. 2019-01-23 05:14:00 +01:00
RandomDevice.h Move VFS sources into Kernel/. 2019-01-23 05:14:00 +01:00
RTC.cpp Kernel: Fix wrong calculation of current Unix timestamp. 2019-02-19 02:39:18 +01:00
RTC.h WindowServer: Put a clock in the top right corner of the screen. 2019-02-13 09:27:08 +01:00
run Add TIOCGWINSZ ioctl so userland can determine terminal geometry. 2018-11-29 03:45:23 +01:00
Scheduler.cpp Port the WindowServer and LibGUI to communicate through local sockets. 2019-02-14 17:18:35 +01:00
Scheduler.h Kernel: When a lock is busy, donate remaining process ticks to lock holder. 2019-02-07 11:14:58 +01:00
SlavePTY.cpp Kernel: Have devices automagically register themselves with the VFS. 2019-02-17 10:38:07 +01:00
SlavePTY.h Kernel: Writing to a slave PTY should yield EIO if the master is closed. 2019-02-05 13:09:01 +01:00
Socket.cpp Kernel: Give each FileDescriptor a chance to co-open sockets. 2019-02-17 11:00:35 +01:00
Socket.h Kernel: Give each FileDescriptor a chance to co-open sockets. 2019-02-17 11:00:35 +01:00
StdLib.cpp Use modern C++ attributes instead of __attribute__ voodoo. 2019-02-15 12:30:48 +01:00
StdLib.h Kernel: Don't disable interrupts to access the system hostname. 2019-02-07 10:29:26 +01:00
sync.sh Move WindowServer to userspace. 2019-02-17 00:13:47 +01:00
SyntheticFileSystem.cpp Kernel: When a lock is busy, donate remaining process ticks to lock holder. 2019-02-07 11:14:58 +01:00
SyntheticFileSystem.h Kernel: Add proper locking to SynthFS and stop disabling interrupts. 2019-02-07 10:47:11 +01:00
Syscall.cpp Kernel: Add a simple shared memory API for two processes only. 2019-02-16 12:13:43 +01:00
Syscall.h Kernel: Add a simple shared memory API for two processes only. 2019-02-16 12:13:43 +01:00
system.h The syncd loop can just be a lambda. 2018-12-24 23:10:48 +01:00
TSS.h Use modern C++ attributes instead of __attribute__ voodoo. 2019-02-15 12:30:48 +01:00
TTY.cpp Support resizing the Terminal app. 2019-02-20 23:38:20 +01:00
TTY.h Kernel: Writing to a slave PTY should yield EIO if the master is closed. 2019-02-05 13:09:01 +01:00
types.h Use modern C++ attributes instead of __attribute__ voodoo. 2019-02-15 12:30:48 +01:00
UnixTypes.h Kernel: More sockets work. Fleshing out accept(). 2019-02-14 15:17:30 +01:00
VirtualConsole.cpp Kernel: Rename Keyboard to KeyboardDevice. 2019-02-17 08:39:09 +01:00
VirtualConsole.h Kernel: Rename Keyboard to KeyboardDevice. 2019-02-17 08:39:09 +01:00
VirtualFileSystem.cpp Kernel: Make BochsVGADevice a BlockDevice and support mmapping it. 2019-02-16 09:57:42 +01:00
VirtualFileSystem.h Kernel: Add Device base class for CharacterDevice. 2019-02-16 00:47:20 +01:00
ZeroDevice.cpp Move VFS sources into Kernel/. 2019-01-23 05:14:00 +01:00
ZeroDevice.h Move VFS sources into Kernel/. 2019-01-23 05:14:00 +01:00