Ingo Weinhold
7e65f8eb29
Added a Vector based map implementation.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3793 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-01 20:37:17 +00:00
Ingo Weinhold
92ec26a3be
Fixed documentation and a minor issue.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3792 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-01 20:36:11 +00:00
Ingo Weinhold
bd3ed7497a
Apparently invoking non-static member functions for default arguments doesn't work. Removed the default argument for Find() and added respective additional versions. Some more minor changes.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3754 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-30 01:00:23 +00:00
Ingo Weinhold
4489db253c
Added a Vector based set implementation.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3751 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-30 00:53:50 +00:00
Ingo Weinhold
eaf9864cde
Added a generic Vector implementation.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3744 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-29 19:45:10 +00:00
Ingo Weinhold
c4de095cd1
Fixed invalid default argument. Not that the compiler eats the file now...
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3743 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-29 19:44:14 +00:00
Ingo Weinhold
42b47c7c30
Some small interface fixes.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3715 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-28 15:53:21 +00:00
Ingo Weinhold
e0f43e3e84
The beginning of an AVL tree based map implementation. Well, the tree part
...
is complete, the interface needs work.
Unfortunately our ancient compiler chokes on this (`Internal Compiler
Error'). I got around the problem by restructuring parts of the code once,
but now I'm stuck -- no idea what I could change. So, there won't be
AVLTree{Map,Set} until we have a working compiler. :-(
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3712 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-28 15:49:33 +00:00
Axel Dörfler
fb68886768
C++ for the kernel.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3701 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-27 22:58:58 +00:00
Axel Dörfler
7f14e583d0
Hide the implementation (the structure definition is now in cbuf.c).
...
Changed return types to status_t where appropriate.
Now usable from C++.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3691 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-27 16:40:53 +00:00
Axel Dörfler
749df8aa6b
Added a benaphore_lock_etc() for a timeout possibility.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3690 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-27 16:39:33 +00:00
Axel Dörfler
0281fb7b32
Removed the old benaphore/rw-lock definitions, added some preliminary new
...
ones (but real functions/inlines this time).
Renamed recursive_lock_create() to recursive_lock_init() for consistency,
and added a "name" parameter.
Changed "int" return to status_t where appropriate.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3676 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-27 03:16:53 +00:00
Axel Dörfler
41415a1bc0
Now compilable with C++.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3674 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-27 02:27:43 +00:00
Axel Dörfler
64700310b9
Unfortunately, BeOS & Linux stdio.h have different header guards - our
...
inbetween solution now have both.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3661 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-25 00:22:04 +00:00
Axel Dörfler
0d76efa411
Changed the header guard to be compatible with the GNU stdio.h file.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3656 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-25 00:09:37 +00:00
Ingo Weinhold
b23394f957
* Implemented what was left to do for KDiskDevice and KPartition
...
management regarding removal and deletion of objects.
* Fixed the file disk system related stuff. KFileDiskSystem now uses the
virtualdrive driver. The former method was seemed simple and brilliant,
but the B_SET_PARTITION ioctl wouldn't work.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3650 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-24 23:56:16 +00:00
Axel Dörfler
c9b0bae94c
Needed to compile the boot loader stuff under x86.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3640 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-24 17:27:07 +00:00
Axel Dörfler
59eb57ae58
Some work-in-progress headers that are needed to build the heap test.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3639 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-24 17:22:11 +00:00
Ingo Weinhold
b8777f30dc
* Added bool to the AutoLocker constructor indicating that the object
...
has already been locked. Defaults to false, of course.
* `Abused' the AutoLocker for partition registration/unregistration
(PartitionRegistrar).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3631 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-23 23:42:15 +00:00
Tyler Dauwalder
d3a0e7c306
General object constructor class
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3623 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-23 05:56:09 +00:00
Tyler Dauwalder
ab608058b4
Allocator that uses malloc()/free()
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3622 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-23 05:55:31 +00:00
Tyler Dauwalder
e9ebb4a961
Beginnings of the kernel utils library.
...
Templated singly linked list class (not quite complete).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3621 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-23 05:54:53 +00:00
Ingo Weinhold
62b9e141e1
Added a find_disk_system(). I first thought, this might be a good idea, but I'm not so sure anymore.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3608 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-22 23:12:20 +00:00
Ingo Weinhold
e1d495e36c
Added field for the ID of the disk system responsible for the partition's content.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3607 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-22 23:10:01 +00:00
Ingo Weinhold
3ec225ba22
Some smaller changes to the module interfaces.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3606 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-22 23:08:26 +00:00
Ingo Weinhold
9007acaee3
Added Dump(). Small fixes.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3605 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-22 23:04:56 +00:00
Ingo Weinhold
fcf461b32c
Implemented the scanning functionality.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3604 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-22 23:03:58 +00:00
Ingo Weinhold
b22221ad17
Minor changes to the KDiskSystem interface.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3603 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-22 23:03:17 +00:00
Ingo Weinhold
0e2967f9d2
Missing header.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3602 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-22 23:00:47 +00:00
Ingo Weinhold
38d5e95af9
Support for creating and deleting (the latter not yet implemented) file disk devices. Added file system addition.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3601 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-22 23:00:20 +00:00
Ingo Weinhold
bdc530c737
Some small adjustments for KFileDiskDevice. Added Dump().
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3600 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-22 22:57:42 +00:00
Ingo Weinhold
17750c7774
Added a special disk device class, that is responsible for representing
...
files as disk devices. This will not only be great for testing the
file and partitioning system modules' writing capabilities, it will also
just be a nice feature to have.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3598 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-22 22:54:16 +00:00
Ingo Weinhold
f7672ebc25
* Made {Publish,Unpublish}Device() virtual and implemented them in
...
KPartition and as no-ops in KDiskDevice.
* Prefixed partition names with "obos_" to not interfere with R5's
partition names.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3509 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-14 00:06:57 +00:00
Ingo Weinhold
2609ebac90
Several fixes necessary to get the partition scanning working.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3506 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-13 22:08:10 +00:00
Ingo Weinhold
ef9b1b52ee
Implemented a preliminary disk device scanning in KDiskDeviceManager.
...
Some changes to KPartition, KDiskDevice, KDiskSystem on this way.
Still missing is KPartition::Publish() and its invocation in
KDiskDeviceManager. Then everything should be in place to start with
porting the scanning parts of our disk system modules.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3486 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-12 22:21:10 +00:00
Ingo Weinhold
ac63679417
Small changes in the header, and implemented everything needed for scanning.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3480 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-11 22:04:34 +00:00
Ingo Weinhold
1bf21e6a40
* Added CreateChild().
...
* Added Publish/UnpublishDevice(). Not implemented yet.
* small fixes
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3479 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-11 22:03:26 +00:00
Ingo Weinhold
13a452eaee
Added an Init() amd dealt with the PrettyName().
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3478 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-11 22:00:59 +00:00
Ingo Weinhold
450c7dd609
Added basic disk system management.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3477 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-11 21:59:27 +00:00
Ingo Weinhold
30b4d57df4
Added TODO.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3467 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-10 22:43:52 +00:00
Ingo Weinhold
929ed30bdc
The disk_device_data now also have a device_geometry field. That will probably come handy.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3466 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-10 22:42:53 +00:00
Ingo Weinhold
3ffe913826
Turned the loose set of functions into partition and FS module interfaces.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3465 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-10 22:41:02 +00:00
Ingo Weinhold
6778f21163
Some fixes in the header and a very basic implementation. In theory the functionality for scanning partitions is implemented, as well as loading/unloading the partition module.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3464 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-10 22:40:09 +00:00
Ingo Weinhold
0b6c74bbe3
Implemented some more bits of KPartition. Added a very useful Open() method.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3463 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-10 22:37:43 +00:00
Ingo Weinhold
af4c45d5d8
Some small fixes.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3462 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-10 22:36:53 +00:00
Ingo Weinhold
f254d01839
Implemented KDiskSystem. Should be almost complete.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3461 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-10 22:36:31 +00:00
Ingo Weinhold
29a37d780d
Implemented some basics of KDiskDeviceManager.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3460 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-10 22:35:57 +00:00
Ingo Weinhold
537635f1d1
Implemented basic parts of KDiskDevice.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3459 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-10 22:35:12 +00:00
Ingo Weinhold
7bb1e99cb6
Pulled set_string() out of KPartition.cpp for it is useful also in other classes. Added a generic AutoLocker.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3458 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-10 22:33:44 +00:00
Ingo Weinhold
4c212afefb
Headers for the disk device manager. Very early state.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3454 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-09 23:04:54 +00:00
Axel Dörfler
ff6ff33a9d
Put spaces between "::" in the asm directive to let it compile in C++ mode.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3262 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-20 03:02:19 +00:00
Axel Dörfler
c0f5672484
Removed unused functions, the C++ extern "C" now spans over all functions.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3236 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-13 15:23:17 +00:00
Axel Dörfler
976b0da0d6
Fixed some C++ build issues with fd.h.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3231 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-13 00:27:29 +00:00
Axel Dörfler
bc09b1bfc2
This stdarg.h header file is not needed at all.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3197 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-11 02:29:41 +00:00
Axel Dörfler
bb23b77201
Removed unused headers.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3153 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-03 16:04:41 +00:00
Axel Dörfler
564cba312e
Some header work: removed unnecessary dependencies to stage2.h, fixed
...
some broken C++ export definitions, added missing licenses etc.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3152 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-03 16:03:26 +00:00
Axel Dörfler
32439967b9
Removed the arch-dependent relocation definitions (they can now be included
...
via arch/elf.h).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3151 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-03 16:02:26 +00:00
Axel Dörfler
8b8fd1c31c
Removed the stage2 related headers (they are now in boot/).
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3150 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-03 15:59:29 +00:00
Axel Dörfler
45792a2df2
"struct ka" is now "struct kernel_args".
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3139 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-03 14:14:39 +00:00
Axel Dörfler
c17f45d123
Some header cleanups.
...
Renamed dbg_save_registers() to arch_...() since it's arch dependent.
Removed unnecessary dependencies to stage2.h.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3138 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-03 14:12:16 +00:00
Axel Dörfler
f78d32a251
Some header cleanups.
...
Removed unused keyboard.h header.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3135 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-03 13:26:32 +00:00
Axel Dörfler
c4bf92f686
Added new arch_elf.h header where the platform dependent relocation definitions
...
are located.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3134 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-03 12:51:56 +00:00
Axel Dörfler
62af4ffa5e
Added missing or changed/removed outdated PPC headers.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3133 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-03 12:49:57 +00:00
Axel Dörfler
2b70a18961
Move boot headers into their own private directory (for now, they are still
...
present in private/kernel/ but this will change soon).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3132 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-03 03:43:30 +00:00
Axel Dörfler
a02a5888af
Added another argument parameter for the thread creation code. Helps
...
implementing a more efficient on_exit_thread().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3073 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-04-18 09:21:22 +00:00
Axel Dörfler
896aefa8ec
Added a new call vfs_new_vnode(), replaced "int" return type to status_t
...
for the VFS vnode functions.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2785 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-02-21 13:44:53 +00:00
Axel Dörfler
9175b5a5e0
Cleanup of the header mess: removed the redundant APIC/mp structure definitions
...
from smp_priv.h and stage2_priv.h. Created a new file smp_apic.h which now
contains those definitions.
Made the APIC_xxx register offsets only base offsets (without referencing a
particular variable).
Other small cleanups (i.e. "unsigned int" to uint32).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2604 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-30 21:20:33 +00:00
Philippe Houdoin
f3eabb6abd
Backport time tracking fix from NewOS:
...
thread code now properly traces time spent in user vs kernel mode. The code was
just plain broken before
http://www.newos.org/cgi-bin/perfbrowse.perl?@describe+1704
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2599 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-29 21:59:37 +00:00
Axel Dörfler
a9731b41c1
Housekeeping changes and small bug-fixes:
...
Added new syscall for set_thread_priority().
Replaced the userland syscall snooze_until() with snooze_etc() (the latter
has to be exported to userland and realize snooze() and snooze_until()).
Cleaned the sources - scheduler functions now have the scheduler_ prefix.
Moved signal related stuff into ksignal.h (out of thread.h).
Replaced public kernel API with direct exports (i.e. resume_thread() instead
of thread_resume_thread()).
Removed the thread_create_XXX_thread*() calls, and replaced them with a
BeOS compatible set.
Made some fields of struct thread a bit prettier.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2569 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-27 02:54:21 +00:00
Axel Dörfler
7f1f508e13
Added two convenience functions list_add_item(), list_remove_item().
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2565 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-26 23:30:12 +00:00
Axel Dörfler
04d145c94d
The team's image API is now using "list" instead of "kqueue".
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2564 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-26 23:29:33 +00:00
Axel Dörfler
8a5543b18c
Added the kernel_daemon.h header which defines the init function for the
...
kernel daemon service.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2560 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-26 17:27:42 +00:00
Axel Dörfler
ffa7234e82
Added a missing struct definition.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2519 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-20 00:58:13 +00:00
Axel Dörfler
f9bdcca59c
Added kernel private node_monitor.h header.
...
Moved definition of "struct io_context" from fd.h to vfs.h.
Introduced new fs/ directory; some cleanups to come.
Added node monitor syscalls.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2479 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-18 14:04:22 +00:00
Axel Dörfler
fc3cda204e
New list primitive.
...
A doubly-linked list with some nice features.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2478 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-18 14:02:47 +00:00
Axel Dörfler
658694ae79
Removed the old dlfcn.h header - the real thing is located in posix/.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2476 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-17 19:13:12 +00:00
Axel Dörfler
9f956562e5
Missed that one, obviously.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2451 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-13 16:36:25 +00:00
Axel Dörfler
c60685fcad
Fixed parameter for get_nth_image_symbol().
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2429 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-12 16:36:30 +00:00
Axel Dörfler
c679492034
Added a queue to the team structure for the registered images.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2423 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-12 16:25:04 +00:00
Axel Dörfler
29164895ac
Must now include image.h directly.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2422 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-12 16:24:12 +00:00
Axel Dörfler
9edac21abd
Removed the image_id type definition from ktypes.h.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2421 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-12 16:23:21 +00:00
Axel Dörfler
ef6d88af27
Renamed "struct rld_export_t" to "struct rld_export", "struct uspace_prog_args_t"
...
to "struct uspace_program_args", prog_name & prog_path to program_name and
program_path.
Moved the MAGIC_APPNAME to a BeOS compatible MAGIG_APP_NAME from rld_priv.h
to this place.
Removed the dlxxx() exports in the rld_export structure - instead, they will
be implemented using the basic runtime linker API which is a slightly extended
version of the standard BeOS calls (load_add_on() has a "flags" paramater to
allow implementation of dlopen()).
Completed the export API to be able to completely support the BeOS API.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2420 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-12 16:22:09 +00:00
Axel Dörfler
30f9b99833
Added sys_ prototypes for the kernel image API syscalls.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2419 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-12 16:17:09 +00:00
Axel Dörfler
49c987ef8d
Added a macro to iterate through the kqueue.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2416 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-12 16:00:59 +00:00
Axel Dörfler
1c204d8bb9
Added syscalls for the image API.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2415 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-12 15:59:50 +00:00
Axel Dörfler
9c12864dfd
Header for the kernel image API.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2414 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-12 15:59:12 +00:00
Axel Dörfler
074a16b53e
Added a private tls.h file with definitions for the reserved TLS slots.
...
Renamed i386_set_kstack() to i386_set_tss_and_kstack(), because that's what
it does.
Added a new function arch_thread_init_tls() which must be called after
having allocated the TLS area.
Renamed arch_thread_initialize_kthread_stack() to arch_thread_init_kthread_stack()
to be more consistent.
Changed the parameters for arch_thread_enter_uspace() - it now gets a pointer
to the thread structure and takes the user stack pointer from there (which
might also be architectural different).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2379 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-07 09:17:31 +00:00
Axel Dörfler
1f6480576d
Added new fields for the local storage of "errno" in the kernel and user-
...
level TLS.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2378 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-07 09:13:36 +00:00
Axel Dörfler
20dde76256
I've added a MAIN_THREAD_STACK_SIZE definition, and put the corresponding
...
BeOS values commented beneath it.
For now MAIN_THREAD_STACK_SIZE is the same as STACK_SIZE.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2377 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-07 09:12:26 +00:00
Axel Dörfler
7208e95f0e
Moved the gdt_idt_descr struct from arch_stage2.h to stage2_priv.h.
...
Moved the tss_descriptor structure to descriptor.h, updated it to be a
segment_descriptor structure, and provided inlines for set_tss_descriptor(),
set_segment_descriptor(), set_segment_descriptor_base(), and
clear_segment_descriptor().
Also added defines for the different privilege levels and descriptor types.
Removed the unusused and incorrect TSS definition, introduced new
TSS_BASE_SEGMENT and TLS_BASE_SEGMENT macros.
Removed include of arch/cpu.h in arch_cpu.h.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2360 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-06 08:02:44 +00:00
Axel Dörfler
346646a2c7
Moved the files vm_types.h, syscalls.h, and vfs_types.h to the private
...
kernel header directory - they are by no means public includes.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2349 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-02 13:16:35 +00:00
Axel Dörfler
7fae070584
Included NewOS change 1674. Moved private elf structures to elf_priv.h.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2320 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-12-30 13:34:25 +00:00
Axel Dörfler
11d4dc0bf5
Added a module_test() function.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2150 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-12-03 17:59:30 +00:00
Axel Dörfler
420a6221ec
Moved thread_types.h to this place.
...
Changed fd.h inlines because team->ioctx is now team->io_context.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2140 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-12-03 14:07:35 +00:00
Axel Dörfler
1a72f541b5
Added function prototypes for forbid_page_faults() and permit_page_faults().
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2135 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-12-03 01:51:39 +00:00
Axel Dörfler
ebf5be407a
Reworked and cleaned the khash; completely removed the new_hash_table
...
implementation that was buggy, not very flexible, and incomplete.
Changed some variable types, and function names.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2110 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-11-29 08:25:08 +00:00
beveloper
428f0ce25c
last cleanup of pool code before rewriting it
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2106 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-11-28 15:05:58 +00:00
beveloper
3b70f94330
added a magic value to check clobbering of the free list
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2103 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-11-28 14:10:20 +00:00
beveloper
60d9ed9e3b
fixed the ASSERT macro, it did not even compile if DEBUG was defined
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2102 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-11-28 14:07:28 +00:00
beveloper
7991b1a031
added a lot of debugging functions that should help fixing bugs
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2099 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-11-28 02:25:04 +00:00