Commit Graph
57 Commits
Author SHA1 Message Date
Michael Phipps d50d9a6a18 More code cleanup. Removing unused variables. Simplifying and shrinking
vpage to be nearly a TLB entry. Final stripping will occur with kernel
integration. More comments.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3042 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-03-26 04:00:38 +00:00
Michael Phipps 69d79fa9f8 More changes and bug fixes.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2871 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-03-07 00:11:10 +00:00
Michael Phipps a48062f5fa Many bug fixes and changes.
Also added "locked list" - a semaphore protected list derived from list.h.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2851 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-02-27 04:41:44 +00:00
Michael Phipps 7c9135c008 Updated and added some tests.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2850 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-02-27 04:40:34 +00:00
Michael Phipps ccbd79a87e Update
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2752 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-02-18 23:56:53 +00:00
Michael Phipps 556632b760 bug fixes found as a resule of testing
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2543 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-24 05:41:40 +00:00
Michael Phipps cd5053c617 More tests to round out (for now) createArea
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2542 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-24 05:41:10 +00:00
Michael Phipps f5b024fb5d Slight changes/bug fixes
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2525 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-21 02:45:14 +00:00
Michael Phipps d89abe1f52 Added more mmap tests, and a file indicating what tests are yet to be done.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2503 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-19 03:00:31 +00:00
Michael Phipps 6c18c9fa14 Small changes.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2466 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-17 01:40:36 +00:00
Michael Phipps fa0e80da02 Small fixes
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2465 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-17 00:54:52 +00:00
Michael Phipps 8bd24c033e Moved Tests
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2398 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-10 01:20:51 +00:00
Michael Phipps f767d0eeab Changes due to better testing
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2397 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-10 01:19:16 +00:00
Michael Phipps cf7199ba56 Many changes due to enhanced testing.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2396 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-10 01:09:45 +00:00
Michael Phipps 954674ddf8 Changes to mmap to make COPY and SHARED work correctly (I hope)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2358 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-06 04:49:58 +00:00
Michael Phipps bf738c95da Added the device driver API that Axel reminded me about.
Updated the TODO list. This is 99% feature complete.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2271 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-12-21 07:47:05 +00:00
Michael Phipps 8f72c5bcf2 Fixed a bug in the vnodeManagement
Added statistics counting.
Started down the path of making various tests share one VM space.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2265 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-12-17 02:28:39 +00:00
Michael Phipps ad5da074bb Removed items, updated items, reordered my priorities...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2249 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-12-15 07:08:41 +00:00
Michael Phipps ceb3763e56 Implemented the sharing of vnodes. Hopefully mmap and file cache and cloned
areas will not step on each others feet...
Added comments all over the place.
Bugs squished


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2248 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-12-15 07:05:38 +00:00
Michael Phipps 42ff0425a7 Fixed more bugs; simpleTest now seems to work correctly.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2075 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-11-24 05:12:50 +00:00
Michael Phipps cc22bcb449 Fixed some bugs. Yet another checkpoint.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2074 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-11-24 04:16:06 +00:00
Michael Phipps bc6600175c Mega changes. Using hash tables.
Many bug fixes
Some formatting changes.
Introduction of vnodeManager - to allow cached, opened and mmapped files to
work together in love, peace and harmony.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2012 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-11-19 04:05:16 +00:00
Michael Phipps 3dcf5034e5 Checkpoint - more work done.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1685 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-26 18:55:44 +00:00
Michael Phipps a550db6753 Checkpoint. Hand examined the code and made several changes/improvements.
Doesn't crash quite as easily. Still some nagging bugs.
Partial implementation of hashTable. Need to make find use keys and do proper
memory allocation (i.e. from physPages, not new).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1349 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-03 03:42:59 +00:00
Michael Phipps 571e21095f Per Jason
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1315 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-30 17:53:51 +00:00
Michael Phipps 5894646a95 Per Jason.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1314 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-30 17:52:57 +00:00
Michael Phipps 8f13f87bf7 For Michael Pfeiffer, ready for beta...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1108 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-21 18:57:19 +00:00
Michael Phipps dd6a407346 For Michael Pfeiffer
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1107 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-21 18:56:09 +00:00
Michael Phipps 8aabdd2043 More improvements. Does not run all tests, though - still have some locking issues
around clone area, I think. Still, much improved...


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1048 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-16 03:14:44 +00:00
Michael Phipps 5fb6c38b6e Another checkpoint. Big one, this time.
Changed the whole way locking was done. What was I thinking?
Many changes and cleanup ideas from Ingo (thanks!).
Not perfect yet, but much better. Still a few things left to implement
in the COW arena - mmap doesn't use it. Also need to finish the vpageManager
which will cause mmap and cacheManager to use the same vnodes where possible.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1042 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-14 17:03:16 +00:00
Michael Phipps f89acd8e06 With this change, all memory except for the areaManager is allocated from the
one area that we allocate.
The areaManager should really be created when the process is created, so this
is something to wait for HW integration time.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@983 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-05 03:26:02 +00:00
Michael Phipps a608664c47 Start of work to move static variables into pages.
A little more clean up
More items on the TODO list (take one off, add 3 more).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@908 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-28 03:26:23 +00:00
Michael Phipps c7b613e84e Added explicit placement new. This may be a problem in kernel land, but it
basically allows me to manage memory and still use new to setup the object.
Fixed the constructors so that objects are properly setup. Tests now run.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@905 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-28 01:34:19 +00:00
Michael Phipps afea942ffa Added pooling, removing new and delete in most cases.
pageManager still needs special treatment.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@890 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-26 20:14:54 +00:00
Michael Phipps df6ee31838 Added reference counting to pages. Cleaned up some bugs.
More testing continues...


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@886 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-26 03:12:35 +00:00
Michael Phipps 53aaaf43d8 Make mmap work, more testing, fixed some bad bugs.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@771 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-16 01:09:45 +00:00
Michael Phipps 4705ceeccd Using GPL'ed code is a no-no.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@761 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-14 03:54:43 +00:00
Michael Phipps f85924fecf This fleshes out the HandleSetMousePosition() and the input_server now tracks the current position of the mouse cursor.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@729 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-12 23:32:30 +00:00
Michael Phipps 10cde11f08 No GPL code allowed.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@661 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-09 00:39:45 +00:00
Michael Phipps 148c5492ba Added another test thread and varied the timing. Still seems to work right.
Updated the TODO list.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@645 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-08 04:06:41 +00:00
Michael Phipps 7bebb1dec3 Just to make Daniel happy... ;-)
swapfile blocks are now put on a free list and properly reused, so it
no longer grows out of control.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@626 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-07 03:21:02 +00:00
Michael Phipps 5b87d86af3 Added some necessary files.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@625 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-07 02:51:06 +00:00
Michael Phipps f8faba8667 Doesn't build without PortLink in the Jamfile
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@624 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-07 02:40:57 +00:00
Michael Phipps c70c326c96 Fixed a serious bug in list.h. :-(
Improved tests to be multi-threaded. Still needs a lot more testing.
Removed the nasty global variable in test.C.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@584 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-05 03:41:16 +00:00
Michael Phipps 74407d8836 Some clean up, prep work to make more tests.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@554 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-02 03:09:41 +00:00
Michael Phipps e03166f0e2 Added tests for and fixed freeArea. Note that this generated some more work to do.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@542 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-31 02:20:33 +00:00
Michael Phipps 1314ca6a7f Enabled saver thread.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@540 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-30 02:02:40 +00:00
Michael Phipps fbafb4de2b Added more tests and we now start the thread for the page cleaner.
Verified (manually) that cleaned pages are used where possible.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@539 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-30 01:39:50 +00:00
Michael Phipps 8985112ee5 Fixing list.h (doh!) and some smaller changes.
Improved all of the printf's to have their method name, for easier tracking


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@538 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-30 00:29:00 +00:00
Michael Phipps e5a94ba1fd Update to reflect that there is some locking in place now.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@427 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-25 01:28:45 +00:00
Michael Phipps 72515139f7 Updates to make creating areas and accessing bytes work. Lots of debugging
printfs, etc in here. But some bug fixes and better code.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@426 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-25 01:27:00 +00:00
Michael Phipps e9a5e3f5cc Change per Jason Vandermark.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@387 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-22 23:39:03 +00:00
Michael Phipps f913779a80 Initial check in. Very preliminary and not really part of the kernel right now...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@329 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-19 03:55:07 +00:00
Michael Phipps 2296a4d62e Here is the modified InputServer.cpp file which includes the casting
change for the DispatchEvent() function.  This will allow the input_server
to work with the current proto6 code in the cvs tree.  It may even work
with the existing proto5.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@297 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-18 02:18:32 +00:00
Michael Phipps a17c6b5131 Checkin per Jason Vandermark.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@296 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-18 02:16:28 +00:00
Michael Phipps eac95b9746 Commit per Jason Vandermark.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@295 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-18 02:15:19 +00:00
Michael Phipps 7c8b733d03 Checkin, per Jason Vandermark.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@294 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-18 02:12:24 +00:00