1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-29 16:07:46 +00:00

Commit graph

  • 8f6998c902 Add SpinLock to IDE disk access. Andreas Kling 2018-10-31 21:31:56 +01:00
  • dec5683e9c Snazz up the kprintf() output a bit by giving it its own color. Andreas Kling 2018-10-31 20:10:39 +01:00
  • 9886b27d9c Add getpwent() family of functions to LibC. Andreas Kling 2018-10-31 19:49:22 +01:00
  • 819ce91395 Enough compatibility work to make figlet build and run! Andreas Kling 2018-10-31 17:50:43 +01:00
  • 69c7a59e6f Fix wrong allocation size used in opendir(). Andreas Kling 2018-10-31 17:25:24 +01:00
  • 2fdc7c2c60 Use ALWAYS_INLINE for ctype inlines. Andreas Kling 2018-10-31 15:53:11 +01:00
  • 71c9b09e8c Fix ls build. Andreas Kling 2018-10-31 15:52:24 +01:00
  • 9160fd0d47 More LibC portability work while trying to get figlet building. Andreas Kling 2018-10-31 10:14:56 +01:00
  • bb90c8ecab A bunch of LibC boilerplate stuff added while trying to get figlet to build. Andreas Kling 2018-10-31 02:09:11 +01:00
  • 511ed4c4de Snazz up the sh prompt a bit. Add the current tty to it. Andreas Kling 2018-10-31 01:21:56 +01:00
  • 3218f00099 Implement basic sys$kill() and add a /bin/kill Andreas Kling 2018-10-31 01:06:57 +01:00
  • 7be30a2fa8 Fuck it, add a 4th virtual console. :^) Andreas Kling 2018-10-31 00:27:34 +01:00
  • 4dec23b487 Add assertion that RTC year is >= 2018. Andreas Kling 2018-10-31 00:26:47 +01:00
  • 555c10a1f8 Minor cleanup. Andreas Kling 2018-10-31 00:25:55 +01:00
  • 72e75c52e3 Pass the register dump to syscall_entry() via an argument. Andreas Kling 2018-10-31 00:23:46 +01:00
  • b4f3bc078f Minor VGA cleanup. Andreas Kling 2018-10-30 23:49:06 +01:00
  • b833aa4162 Fix bug where Console::the() was initialized too late. Andreas Kling 2018-10-30 23:01:48 +01:00
  • 00c21d1590 Add sys$ttyname_r and ttyname_r() + ttyname(). Andreas Kling 2018-10-30 22:03:02 +01:00
  • 7a85384e47 sh should read from fd 0 (stdin) instead of /dev/keyboard. Andreas Kling 2018-10-30 16:17:34 +01:00
  • 1b81813a66 Fix crashy bug where we'd try to deactivate VC -1 on boot. Andreas Kling 2018-10-30 16:16:20 +01:00
  • 7a7956a595 Virtual consoles kinda work! Andreas Kling 2018-10-30 15:33:37 +01:00
  • 68739dc43e Start working on virtual consoles/TTYs. Andreas Kling 2018-10-30 13:59:29 +01:00
  • bd2b5327d0 Basic support the backspace key. Andreas Kling 2018-10-30 11:55:58 +01:00
  • 29035ffde7 Hang if a task crashes while it's already crashing.. Andreas Kling 2018-10-30 00:12:08 +01:00
  • 0f20be05a6 Implement sys$getcwd properly. Andreas Kling 2018-10-30 00:06:31 +01:00
  • 8e640539ef Add an inode metadata cache to the ext2fs implementation. Andreas Kling 2018-10-29 23:45:34 +01:00
  • 4259ffb080 Improve ps output. Andreas Kling 2018-10-29 23:02:07 +01:00
  • b1ff62f605 Okay let's just not have this broken locking at all right now. Andreas Kling 2018-10-29 22:43:39 +01:00
  • e6284a8774 Fix broken SpinLock. Andreas Kling 2018-10-29 21:54:11 +01:00
  • bea106fdb2 Fix up VFS::resolveSymbolicLink() to use a base inode instead of a base path. Andreas Kling 2018-10-28 14:25:51 +01:00
  • 97726862dd Add basic symlink support. Andreas Kling 2018-10-28 14:11:51 +01:00
  • 1d4af51250 Add a VFS::absolutePath(InodeIdentifier). Andreas Kling 2018-10-28 12:20:25 +01:00
  • 3f050c1972 Add zone dump to /proc/mm. Andreas Kling 2018-10-28 10:36:59 +01:00
  • c76dc9a047 Add /proc/mm and a /bin/mm utility that just dumps it. Andreas Kling 2018-10-28 10:26:07 +01:00
  • 0a6a2521e8 Add subregions to /proc/PID/vm Andreas Kling 2018-10-28 10:03:54 +01:00
  • 1d5afbdffc Add sys$set_mmap_name and use it from LibC's malloc. Andreas Kling 2018-10-28 09:57:22 +01:00
  • e904f193c1 Canonicalize the path used by sh. Andreas Kling 2018-10-28 09:36:21 +01:00
  • 88ad59bfb1 Add a simple FileSystemPath class that can canonicalize paths. Andreas Kling 2018-10-28 08:54:20 +01:00
  • 43475f248b Add save/unsave cursor escape sequences. Andreas Kling 2018-10-28 01:44:53 +02:00
  • ea6221dd06 Stop committing changes to _fs_contents and generate it in the sync script. Andreas Kling 2018-10-28 01:19:27 +02:00
  • e2dbdd14aa Colorize ls output. Andreas Kling 2018-10-28 01:17:48 +02:00
  • 52c19136f2 Give the shell a nice, colorful prompt. Andreas Kling 2018-10-28 01:08:01 +02:00
  • dd3244137e Add basic support for ANSI color escape sequences. Andreas Kling 2018-10-28 00:51:27 +02:00
  • 8289a5c93c Implement 'H' and 'J' escape sequences. Andreas Kling 2018-10-27 23:42:20 +02:00
  • cc7e3519a6 Add a /bin/clear that prints the clear terminal escape sequence. Andreas Kling 2018-10-27 17:39:08 +02:00
  • 8f91a47aeb Add some basic field width support to printf(). Andreas Kling 2018-10-27 16:43:03 +02:00
  • de2fb183cc Rename "kernel map" concept to just "ksyms" Andreas Kling 2018-10-27 15:02:39 +02:00
  • 9a71c7759a Implement loading of linked ELF executables. Andreas Kling 2018-10-27 14:56:52 +02:00
  • 99ee6acd69 Enable A20 line at boot. Andreas Kling 2018-10-27 14:09:33 +02:00
  • 601d0d1739 Better int hashing. This was going to bite me sooner or later. Andreas Kling 2018-10-27 09:33:24 +02:00
  • ec07761d0f Implement waitpid() support for getting the waitee's exit code. Andreas Kling 2018-10-27 01:24:22 +02:00
  • 5cfeeede7c Remove the obsolete "Userspace" stuff. Andreas Kling 2018-10-27 00:41:23 +02:00
  • 42c88b5f2d Turn off the floppy drive after the boot loader is finished. Andreas Kling 2018-10-27 00:34:36 +02:00
  • 3db8d7ae1a Use Unix::stat for sys$lstat(). Andreas Kling 2018-10-27 00:29:31 +02:00
  • 509e5f9952 Add some basic address validation to syscalls. Andreas Kling 2018-10-27 00:25:08 +02:00
  • 2716a9e2d7 Greatly improve /proc/PID/stack by tracing the ebp frame chain. Andreas Kling 2018-10-27 00:14:24 +02:00
  • c928b06218 Add a very hackish /proc/PID/stack. Andreas Kling 2018-10-26 22:32:35 +02:00
  • 81627cf7d5 Add a simple /proc/mounts that enumerates the current VFS mounts. Andreas Kling 2018-10-26 18:43:25 +02:00
  • a447359916 Add a /proc/kmalloc stats file. Andreas Kling 2018-10-26 18:28:25 +02:00
  • edb81a635c Fix bug where you couldn't "cd .." into the root of a mounted fs. Andreas Kling 2018-10-26 18:19:31 +02:00
  • a32b3a3ddf Implement /proc/PID/vm. Andreas Kling 2018-10-26 17:42:12 +02:00
  • 10347b9ae8 Add ASSERT_INTERRUPTS_DISABLED in Task::fromPID(). Andreas Kling 2018-10-26 15:11:29 +02:00
  • 63e5583c18 Properly null-terminate the argv list created by sh. Andreas Kling 2018-10-26 15:04:20 +02:00
  • 1c45b28da6 Add sys$uname() and a /bin/uname utility. Andreas Kling 2018-10-26 14:56:21 +02:00
  • 384e2f24d4 Add per-task limit for open fd's. Hard-coded at 16 for now. Andreas Kling 2018-10-26 14:30:13 +02:00
  • 2749e7f1c2 Implement sys$chdir() and teach sh+ls to cd around and browse different dirs. Andreas Kling 2018-10-26 14:24:11 +02:00
  • ac738b03d6 Add memcpy() and strcmp() to LibC. Andreas Kling 2018-10-26 13:32:13 +02:00
  • 0af9254812 If spawning a task fails after we did a partial ELF load, remap current. Andreas Kling 2018-10-26 12:22:22 +02:00
  • 546ddd7de0 Remove logspam in /dev/{full,null,zero} now that they work just fine. Andreas Kling 2018-10-26 11:27:42 +02:00
  • 6312c3f253 Fix mixup between /dev/null and /dev/zero device registration. Andreas Kling 2018-10-26 11:20:20 +02:00
  • df87dda63c Implement argc/argv support for spawned tasks. Andreas Kling 2018-10-26 11:16:56 +02:00
  • 53abfa7ea1 Add sys$gethostname and /bin/hostname Andreas Kling 2018-10-26 09:54:29 +02:00
  • 3faaa3e04a Add /bin/false and /bin/true for fun. :^) Andreas Kling 2018-10-25 21:39:37 +02:00
  • dc6f57f19c Add gettimeofday() syscall and LibC wrappers gettimeofday() and time(). Andreas Kling 2018-10-25 17:29:49 +02:00
  • 5978185242 Add a "sleep" syscall that sleeps for N seconds. Andreas Kling 2018-10-25 13:53:49 +02:00
  • c6f2890d8e Implement a basic way for read() to block. Andreas Kling 2018-10-25 13:07:59 +02:00
  • ba56f4afde If no context switch occurs, add 1 to the timesScheduled() for current. Andreas Kling 2018-10-25 12:45:29 +02:00
  • 571dc8234f Make the stage2 init task sleep dreamily when finished. Andreas Kling 2018-10-25 12:39:59 +02:00
  • fdc782c1d1 Add a very naive block cache to the DiskBackedFileSystem. Andreas Kling 2018-10-25 12:35:49 +02:00
  • 82bbfa8496 Keyboard should support the space character (jeez!) Andreas Kling 2018-10-25 12:10:25 +02:00
  • 260b14e505 Implement errno in LibC. Andreas Kling 2018-10-25 12:06:00 +02:00
  • 434b6a8688 Unify the Task constructors. Andreas Kling 2018-10-25 11:15:17 +02:00
  • dff516f6d0 Remove unused Task states. Andreas Kling 2018-10-25 10:51:51 +02:00
  • 4bd69d4352 Remove old DatBuffer class. Andreas Kling 2018-10-25 10:49:43 +02:00
  • de7c54545a Remove age-old IPC stuff that wasn't working anyway. Andreas Kling 2018-10-25 10:39:39 +02:00
  • ce126120d1 Add a few more InterruptDisablers. Andreas Kling 2018-10-25 10:33:10 +02:00
  • 1c49b34b93 Selectively disable interrupts in MM. Andreas Kling 2018-10-25 10:15:28 +02:00
  • 86a547dcac Add parent PIDs to /proc/summary Andreas Kling 2018-10-25 10:15:13 +02:00
  • 16f318408d ELFLoader should fail with an error message for unresolved symbols. Andreas Kling 2018-10-25 10:00:37 +02:00
  • ec1d16b307 Add a "pwd" utility to userland. Andreas Kling 2018-10-24 14:28:22 +02:00
  • eb4074bb9d Put more logspam behind EXT2_DEBUG. Andreas Kling 2018-10-24 13:38:53 +02:00
  • 5f36a5f22e Add an lstat() syscall and use it to make "ls" nicer. Andreas Kling 2018-10-24 13:19:36 +02:00
  • bca4b71bfa Lots of hacking to make a very simple "ls" utility. Andreas Kling 2018-10-24 12:43:52 +02:00
  • 0c5bbac86e Add an InterruptDisabler helper class and use that for kmalloc. Andreas Kling 2018-10-24 11:07:53 +02:00
  • 9a296d63f3 Add simplified mmap() and munmap() syscalls. Andreas Kling 2018-10-24 09:48:24 +02:00
  • a5caf7ca99 Make the kmalloc global stats variable volatile. Andreas Kling 2018-10-24 01:02:55 +02:00
  • 82dae8fc90 Add a kmalloc lock. This definitely reduces flakiness. Andreas Kling 2018-10-24 00:51:19 +02:00
  • 8e27cf2428 Cleanup. Andreas Kling 2018-10-24 00:51:09 +02:00
  • 57136ad87e synthfs: generated files should have size=0. Andreas Kling 2018-10-24 00:50:23 +02:00
  • b40c851fce Unbreak crashy user process test. Andreas Kling 2018-10-24 00:35:07 +02:00