Commit Graph

2759 Commits

Author SHA1 Message Date
Jonas 'Sortie' Termansen a2dd8be7aa Fixed using wrong system call in libmaxsi/x64/signal.s 2011-12-04 18:24:06 +01:00
Jonas 'Sortie' Termansen 61f02431ee Removed ConvertUInt{8,16} - ConvertUInt32 handles their input instead. 2011-12-04 15:49:29 +01:00
Jonas 'Sortie' Termansen 3b8bf9419d Removed obsolete functions to read from the initrd.
Use the initrd filesystem instead.
2011-12-04 15:38:02 +01:00
Jonas 'Sortie' Termansen 635a49644a Made usleep(2) a sortix extension. 2011-12-04 15:24:55 +01:00
Jonas 'Sortie' Termansen 7623ff8092 unistd.h now uses the __useconds_t from sortix/bits.h. 2011-12-04 15:11:39 +01:00
Jonas 'Sortie' Termansen 0f0696dc74 make clean also cleans bench/ now. 2011-12-04 15:06:30 +01:00
Jonas 'Sortie' Termansen d9205a59df The games now use the error(3) function. 2011-12-04 15:04:06 +01:00
Jonas 'Sortie' Termansen fda16f93ac Added a everything-all-archs target that builds both x86 and x64. 2011-12-02 22:59:33 +01:00
Jonas 'Sortie' Termansen ac81da7609 Only build benchmarks when given BENCH=1 to make. 2011-12-02 22:48:30 +01:00
Jonas 'Sortie' Termansen 63cde07004 Added a benchmark for counting context-switches per second. 2011-12-02 22:39:18 +01:00
Jonas 'Sortie' Termansen b0859c6d92 usleep'ing for 0 usecs simply causes a context-switch. 2011-12-02 22:37:17 +01:00
Jonas 'Sortie' Termansen 5862441351 Added a system calls per second benchmark. 2011-12-02 12:27:58 +01:00
Jonas 'Sortie' Termansen f8129a17b2 Changed the build system for 64-bit quite a bit.
The kernel is now compiled 100% as 64-bit code and converted to ELF32.
2011-12-01 23:06:34 +01:00
Jonas 'Sortie' Termansen 8e8bb15a1b Improved corruption panic message in initrd.cpp 2011-12-01 23:03:00 +01:00
Jonas 'Sortie' Termansen b0884584a1 Added a very simple checksum field to the init ramdisk.
This uncovers a bug where the bootloader may corrupt the initrd on x64.

This is probably related to our kernel64 hack..
2011-12-01 21:44:11 +01:00
Jonas 'Sortie' Termansen 2faafd3f99 Stack is now aligned in 64-bit Sortix threads. 2011-12-01 21:43:35 +01:00
Jonas 'Sortie' Termansen 7304c8f528 Fixed uninitialized memory bug in the keyboard driver.
This often prevented the letter 'c' from working in x64.
2011-12-01 17:30:14 +01:00
Jonas 'Sortie' Termansen f5b46a89ed uname(1) now reports whether the system is 32-bit or 64-bit. 2011-12-01 15:30:17 +01:00
Jonas 'Sortie' Termansen ae1c157445 Temporary hack to make x64 system calls use the right registers. 2011-12-01 14:54:47 +01:00
Jonas 'Sortie' Termansen 6562da4092 waitpid(2) now returns ECHILD on error. 2011-12-01 14:54:19 +01:00
Jonas 'Sortie' Termansen cf53e4a020 Fixed 64-bit resumed system calls. 2011-12-01 14:29:49 +01:00
Jonas 'Sortie' Termansen c0c20860ed Lots of improvements to 64-bit Sortix.
Fixed 64-bit-ness bug in BSR() and BSF().
Added 64-bit system call stubs in libmaxsi.
Added a Elf64 program loader.
Fixed uninitialized memory bug in the scheduler.
x64/boot.s now takes care of user-space memory permissions.
Fixed bug in x64/syscall.s

That's right. The system now boots in 64-bit mode.

It is horribly unstable, though.
2011-12-01 10:45:44 +01:00
Jonas 'Sortie' Termansen f460c4abec Added support for 64-bit interrupts. 2011-11-30 23:30:14 +01:00
Jonas 'Sortie' Termansen f0ec4ffacc Forgot to push %rbp in x64/syscall.s 2011-11-29 11:45:00 +01:00
Jonas 'Sortie' Termansen 0b1c2a77c9 x64 now compiles again and runs on real hardware.
A nasty bug was fixed that caused triple faults on systems with > 1 GiB RAM.
2011-11-29 01:31:54 +01:00
Jonas 'Sortie' Termansen 8c146f14c0 Added uptime(1). 2011-11-28 16:29:53 +01:00
Jonas 'Sortie' Termansen f232a054d3 Added O=-ON and PANIC_SHORT=1 variables to the makefile. 2011-11-28 15:25:00 +01:00
Jonas 'Sortie' Termansen 965f3e3dbf Pong no longer shakes as much the first few frames. 2011-11-28 11:48:02 +01:00
Jonas 'Sortie' Termansen 1686b2b903 Removed hello program. 2011-11-28 11:34:50 +01:00
Jonas 'Sortie' Termansen 6781308360 Rewrote the memory allocation functions.
free(3) can now unify unused neighbor blocks, reducing mem usage.
2011-11-27 22:53:05 +01:00
Jonas 'Sortie' Termansen cd936886e6 Writing to /dev/vga hides the cursor until a write to /dev/tty. 2011-11-27 12:03:33 +01:00
Jonas 'Sortie' Termansen 4f3a7230b0 Destroying the addressspace after exit prevents leak of at least 16 KiB. 2011-11-27 12:02:34 +01:00
Jonas 'Sortie' Termansen 06909c6df9 Fixed panic when executing non-existent file. 2011-11-27 00:20:23 +01:00
Jonas 'Sortie' Termansen d96d790de7 Oops, meant 'used' instead of 'free' in memstat. 2011-11-26 21:10:08 +01:00
Jonas 'Sortie' Termansen bd1b1fe3bc Added isatty(2), which is used by editor. 2011-11-26 21:00:40 +01:00
Jonas 'Sortie' Termansen 3f50a335bb devfs now correctly manages sizes of files.
This fixes a regression caused by the RAM fix a few commits ago.
2011-11-26 21:00:37 +01:00
Jonas 'Sortie' Termansen ce9787a439 Greatly reduced RAM usage in ramfs. 2011-11-26 20:25:25 +01:00
Jonas 'Sortie' Termansen 9152443816 Added memstat, a program for displaying memory usage. 2011-11-26 20:14:57 +01:00
Jonas 'Sortie' Termansen f45def4a68 cat(1) now writes to fd 1 instead of /dev/tty. 2011-11-26 19:14:08 +01:00
Jonas 'Sortie' Termansen 4cac495121 mxsh now ignores trailing whitespace. 2011-11-26 13:27:15 +01:00
Jonas 'Sortie' Termansen d4231b2027 Added program_invocation_name(3), error(3), and perror(3) and used them. 2011-11-26 11:00:45 +01:00
Jonas 'Sortie' Termansen 867627c085 Added echo(1). 2011-11-26 00:54:17 +01:00
Jonas 'Sortie' Termansen b6a0fd0374 Removed deprecated VGA API and moved it to /dev/vga. 2011-11-25 13:38:31 +01:00
Jonas 'Sortie' Termansen c0fa3a6aae Editor no longer moves the cursor if not needed. 2011-11-24 20:25:52 +01:00
Jonas 'Sortie' Termansen 63b622a086 The shell now supports sending stdout to a file. 2011-11-24 17:42:40 +01:00
Jonas 'Sortie' Termansen 724305f3a7 Merge commit '7a233f2938f4e28d61504853e2f6daf4904aab33'
Conflicts:
	sortix/fs/ramfs.cpp
2011-11-24 15:38:45 +01:00
Jonas 'Sortie' Termansen 7aff476117 Fixed bug in the remove function of the sorted list class. 2011-11-24 10:41:13 +01:00
Jonas 'Sortie' Termansen 4890c306c4 printf(3) now writes to fd 1. 2011-11-24 10:26:36 +01:00
Jonas 'Sortie' Termansen e72d086a8f Disallow / in filenames in ramfs. 2011-11-23 17:51:18 +01:00
Jonas 'Sortie' Termansen 481ddfa7e4 rm(1) usage now works without crashing. 2011-11-23 17:05:09 +01:00