Commit Graph

1346 Commits

Author SHA1 Message Date
Kevin Lange
e9e892bae5 Unresolved symbol handling 2014-03-12 00:18:55 -07:00
Kevin Lange
ed03c517ad More real module loading
Still need to do proper loading of the ELF sections somewhere, but other
than that, we've got a standard interface now. Needs a syscall so we can
write an insmod or something like that.
2014-03-11 23:56:08 -07:00
Kevin Lange
c67d054526 Actually need to handle these as errors, but let's just be safe. 2014-03-11 07:59:00 -07:00
Kevin Lange
e9e23feb66 Let's turn on some optimizations. 2014-03-11 07:58:12 -07:00
Kevin Lange
e90256323e python2 2014-03-11 02:02:43 -07:00
Kevin Lange
bcaa93b023 more random housecleaning 2014-03-11 01:55:51 -07:00
Kevin Lange
7ca44b0755 2AM, time to make more Makefile tweaks 2014-03-11 01:43:42 -07:00
Kevin Lange
23d833e591 account for modules in some makefile targets 2014-03-11 00:18:51 -07:00
Kevin Lange
47ace6c8d6 Cleanup headers 2014-03-09 23:31:13 -07:00
Kevin Lange
be7dc6fb17 Support more relocation methods 2014-03-09 23:01:30 -07:00
Kevin Lange
1389916cba quick cleanup 2014-03-09 22:37:49 -07:00
Kevin Lange
c051fe7ee1 First module load! 2014-03-09 22:31:34 -07:00
Kevin Lange
cc4391d783 Initial work on modules
There's a lot here, so let's through it:
- Lots of work to include a symbol table in the kernel. We can't rely on
  our bootloader to give us our own ELF information, so we do this
  separately. This probably should be changed to output a C source
  rather than assembly, but that's a TODO.
- Makefile can now generate modules. It works basically the same way any
  other kernel object works, expect with a slightly different linking
  scheme.
- Commands have been added to the debug shell to load modules, but they
  don't work yet - still need to get through relocation and linking.
- Commands have been added to the debug shell to print the symbol list,
  as well as print symbol values (but note that printing symbol values
  is kinda dangerous if you don't know what they are, so don't just go
  printing things willy-nilly).
2014-03-09 19:36:28 -07:00
Kevin Lange
8658f5ee40 More Makefile cleanup 2014-03-08 22:17:47 -08:00
Kevin Lange
d65a757643 filename conventions on documentation 2014-03-08 21:49:06 -08:00
Kevin Lange
743d202cdd Remove the CONTRIBUTING doc file 2014-03-08 21:48:29 -08:00
Kevin Lange
f3b484eeb8 More Makefile cleanup 2014-03-08 21:46:43 -08:00
Kevin Lange
1655cfc600 Suggested cleanups from sortie 2014-02-26 21:10:56 -08:00
Kevin Lange
ecf124ece4 Merge branch 'strawberry-dev' of github.com:klange/toaruos into strawberry-dev 2014-02-26 21:00:29 -08:00
Kevin Lange
d42617020f random rtl network stuff, not working yet 2014-02-26 21:00:16 -08:00
Kevin Lange
608b0406e6 Update pci headers 2014-02-26 20:59:25 -08:00
Kevin Lange
010a461d65 Minor cleanup 2014-02-26 20:59:10 -08:00
Kevin Lange
fd676036cc Build cleanup 2014-02-26 20:58:33 -08:00
Kevin Lange
3fd6a447ef python2 2014-02-12 13:33:19 -08:00
Kevin Lange
3749c6e954 more debug shell socket stuff 2014-01-14 21:21:33 -08:00
Kevin Lange
e2fc901d93 Make sure we've got a good genext2fs 2014-01-10 18:29:55 -08:00
Kevin Lange
ff8bfef01f Merge pull request #39 from fluxer/strawberry-dev
Correct newlib autotools files for new automake
2014-01-10 18:00:05 -08:00
Ivailo Monev
72d9199b65 Correct newlib autotools files for new automake
On automake>=1.13.x --cygnus has been removed and
causes failures during autoreconf. In addition
create various files (NEWS, README, etc.) to
prevent errors, again, during autoreconf.
2014-01-11 01:47:48 +00:00
Kevin Lange
18f3f54494 kinda silly, but whatever 2014-01-10 00:45:59 -08:00
Kevin Lange
0f8e552060 no more ramdisks (for now) 2013-12-15 21:41:50 -08:00
Kevin Lange
f5be45a2c9 lots of legacy cleanup 2013-12-15 21:33:46 -08:00
Kevin Lange
2ced88cf33 make kernel hashmap generic 2013-12-15 20:27:06 -08:00
Kevin Lange
98736f23d4 please stop sending me pull requests 2013-12-15 13:41:41 -08:00
Kevin Lange
6629eed64a debug shell cleanup 2013-12-14 13:47:18 -08:00
Kevin Lange
ed3c578e64 clean up some legacy util stuff 2013-12-13 20:50:04 -08:00
Kevin Lange
ebe1c24dbd Some sort of PCI subsystem, maybe 2013-12-12 23:40:52 -08:00
Kevin Lange
5c549e1068 util/mk-end should ^[[K for warnings 2013-12-05 19:30:19 -08:00
Kevin Lange
faec73e73d Workaround an issue where terminals werne't closing 2013-12-02 21:05:30 -08:00
Kevin Lange
ee978f3dbe Fix freeing keys, add another test 2013-12-01 23:50:13 -08:00
Kevin Lange
902b0342b9 Add some more hashmap functions
And port kernel console command lookup to use a hashmap.
2013-12-01 23:29:40 -08:00
Kevin Lange
204d9bb6ce Remove debug logging from hashmap 2013-12-01 21:46:23 -08:00
Kevin Lange
6fde2533a1 Better hash function 2013-12-01 21:40:39 -08:00
Kevin Lange
26cfa78f89 Use hashmap for args
There, now it's fast.
2013-12-01 21:22:06 -08:00
Kevin Lange
68941f6afd Simple hashmap 2013-12-01 21:19:09 -08:00
Kevin Lange
a376ab2563 Fix some weirdness 2013-12-01 20:07:31 -08:00
Kevin Lange
56ad9598d0 New kernel args parser
I know, this is a lot slower than the old one, but it's a transition to
a new-new args parser that will use a hashmap... as soon as I get around
to writing a hashmap implementation.
2013-12-01 19:37:22 -08:00
Kevin Lange
1cbd26689b Some FS navigation in the debug console
Since I'm working on VFS rewrites...
2013-11-30 22:27:45 -08:00
Kevin Lange
da1eb69d6c Fix a link in a doc file 2013-11-30 15:14:22 -08:00
Kevin Lange
89cb3c8dbd A reasonable shell command system 2013-11-30 00:09:04 -08:00
Kevin Lange
774f757265 Move 'analyze' to util/ 2013-11-29 19:25:02 -08:00