Axel Dörfler
ab78c7cbc5
Added partition type constants for HFS/HFS+ file systems.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11332 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-11 03:11:19 +00:00
Axel Dörfler
90bce836e0
Changed the way user/kernel time is tracked for threads. Now, thread_at_kernel_entry()
...
and thread_at_kernel_exit() are always called for userland threads at the appropriate
situation (note, I've renamed those from *_atkernel_*).
The timing should be more accurate this way, and the thread::last_time_type field
is no longer needed: all interrupts are now added to the kernel time (where the
time is actually spent).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11331 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-11 03:10:21 +00:00
Ingo Weinhold
032fea39cb
Added userland debugging support structures to thread and team structures.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11315 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-10 03:00:52 +00:00
Ingo Weinhold
f19279abda
Danger! The size of empty structures differs between C and C++, so we have to put something in, if we want to use them from both.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11314 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-10 02:59:37 +00:00
Ingo Weinhold
44ed1270a3
Added debugging related syscalls.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11311 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-10 02:55:02 +00:00
Ingo Weinhold
1ec1e1185b
handle_signals() now takes a pointer to a cpu_state, so that after restoring and re-disabling interrupts the state can be propagated back to the caller.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11309 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-10 02:49:41 +00:00
Ingo Weinhold
bc797a9ee5
The beginnings of userland debugger support. Currently basically only what is needed for strace is implemented.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11308 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-10 02:47:46 +00:00
Axel Dörfler
d12de9209a
Added some more convenience VFS calls (vfs_stat_vnode(), and vfs_get_vnode_name()).
...
Removed *_create() and *_create_entry_ref() syscalls - they are now handled by
*_open() and *_open_entry_ref() calls which get another parameter for the permissions.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11204 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-02 06:20:00 +00:00
Axel Dörfler
76017250df
Added some more and better cache notifications.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11203 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-02 06:17:58 +00:00
Ingo Weinhold
164d84bb10
Switched to new DoublyLinkedList class.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11193 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-02 02:35:16 +00:00
Ingo Weinhold
f42f300bd5
Work around a gcc bug: A private typedef in a base class can class with an equal identifier in a derived class.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11192 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-02 02:31:06 +00:00
Ingo Weinhold
b0f7c84522
Switched to new DoublyLinkedList class.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11191 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-02 02:19:23 +00:00
Ingo Weinhold
50d68edcf4
It's fun to rename functions in templatized code. You only realize, that you missed some, when that specific part is instantiated.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11190 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-02 02:12:35 +00:00
Ingo Weinhold
2cfdb0ed38
* Added DoublyLinkedListMemberGetLink class which directly accesses the
...
link member in the element class. Usually more comfortable for structs.
* Added Add() method as synonym for Insert().
* Made fGetLink member static to save memory in objects using it.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11188 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-02 01:48:43 +00:00
Ingo Weinhold
297ffaeb84
Appended the new DoublyLinkedList implementation to DoublyLinkedList.h. The old implementation will go, when all the places where it is used have been adjusted.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11185 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-02 01:14:47 +00:00
Ingo Weinhold
244f03dc1c
* Moved the autolocking code for recursive lockers to <util/AutoLock.h>.
...
* Added resolve_mount_point_to_volume_root() version for external use
(by the node monitor).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11159 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-30 16:11:46 +00:00
Ingo Weinhold
831841e1c0
Moved generic autolocking code to <util/AutoLock.h>.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11158 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-30 16:09:57 +00:00
Ingo Weinhold
b6933d8acc
Moved generic auto locking code out of
...
<disk_device_manager/KDiskDeviceUtils.h> into <util/AutoLock.h>.
Added instantiations for recursive locks (moved from vfs.cpp) and
mutexes.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11157 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-30 16:09:06 +00:00
Ingo Weinhold
1fa9da350b
Removed obsolete struct.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11143 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-30 01:11:33 +00:00
Ingo Weinhold
4a24ce3652
An alternative doubly linked list implementation which is far more complete and usable.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11138 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-30 00:42:56 +00:00
Axel Dörfler
14771b1547
Added _kern_transfer_area() syscall.
...
Added team_id parameter to vm_create_aspace().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11083 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-27 07:06:49 +00:00
Axel Dörfler
f1a2f39517
Added arch_rtc_init() function prototype.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11074 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-26 18:28:40 +00:00
Ingo Weinhold
c277ab01e6
Make the compiler happy. Shadowing super class methods with different signature is a very annoying C++ feature.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11069 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-26 14:57:35 +00:00
Ingo Weinhold
ea69d9d35f
Moved the kMessageHeaderMagic constant into the class. Made BMessage a friend of KMessage.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11059 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-26 02:10:42 +00:00
Ingo Weinhold
0859d5e9ae
Added B_USER_CLONEABLE_AREA to the kernel area protection mask.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11049 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-25 22:56:31 +00:00
Ingo Weinhold
647bed8f15
Added clarifying comment.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11024 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-25 14:47:22 +00:00
Axel Dörfler
f3cadd05dd
Improved header - struct kernel_args was only defined in arch headers.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11019 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-25 14:24:01 +00:00
Axel Dörfler
dd5857c283
Added devfs_publish_directory() prototype.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11016 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-25 02:37:08 +00:00
Ingo Weinhold
fbca78bb8b
Added messaging service syscalls.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10993 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-24 01:22:51 +00:00
Ingo Weinhold
244ddcf058
Added _user_unregister_messaging_service(). Fixed second send_message() proto.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10991 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-24 01:19:03 +00:00
Ingo Weinhold
59b9b48bb3
Added a service that will be responsible for sending messages from kernel
...
to userland applications. A userland server (probably the registrar) will
register as the server responsible for delivering the messages. The
messages are passed to it via shared memory.
The advantage over sending the messages directly will be, that they won't
need to be dropped, if the receiver port is temporarily full.
Currently only the kernel side is implemented. Completely untested yet.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10983 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-23 19:54:19 +00:00
Ingo Weinhold
e81d2d2645
Added missing headers.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10982 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-23 19:43:32 +00:00
Ingo Weinhold
c3a3ddf246
Added KMessage, a data container pretty much like BMessage, but
...
append-only and hence has very compact storage and a comparatively small
footprint implementation. Can be used for kernel->userland messaging.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10958 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-22 19:19:36 +00:00
Axel Dörfler
a829700f98
Added missing arch_system_info.h header.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10911 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-20 18:00:33 +00:00
Axel Dörfler
dca263620a
Improved headers, updated license, made C++ safe.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10909 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-20 17:52:06 +00:00
Ingo Weinhold
9a6c828556
The return value of _user_read_port_etc() is ssize_t. Reported by Gert van Valkenhoef.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10871 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-19 14:13:44 +00:00
Axel Dörfler
28d9360f57
Removed no longer used SYS_MAX_* constants (we have B_*_NAME_LENGTH for this).
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10841 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-18 17:18:01 +00:00
Axel Dörfler
f43c430864
No longer used.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10837 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-18 16:46:01 +00:00
Axel Dörfler
321231a056
Added prototype for probe_for_device_type().
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10832 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-18 16:13:27 +00:00
Axel Dörfler
ceba105306
Added function prototypes for the kernel private load_module() and unload_module() calls.
...
Made the header C++ safe.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10820 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-18 02:34:00 +00:00
Axel Dörfler
6de263b12e
This can be useful at other places as well (originally came from the
...
BFS implementation).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10819 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-18 02:31:56 +00:00
Axel Dörfler
aedf4f4358
Changes because of renaming various data structures (pnp_node -> device_node, ...).
...
Also renamed children_next|prev to siblings_next|prev as I was confused by the former.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10671 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-11 23:23:20 +00:00
Axel Dörfler
3278ab8475
Made header C++ safe. Added new function prototype for arch_dbg_con_init_settings().
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10638 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-10 07:43:48 +00:00
Axel Dörfler
0d4ea07bd7
Added driver_settings support to the kernel_args structure.
...
The driver settings are put into the kernel_args memory section and
copied on kernel startup.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10635 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-10 07:36:08 +00:00
Axel Dörfler
4b0c008cc5
Added some definitions for the generic syscalls. Cache modules should currently
...
be located in the "file_cache" directory - this might or might be changed later.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10602 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-07 00:56:50 +00:00
Jérôme Duval
5622a2e2c5
added get_rtc_info, needed in the kernel for services which use local timestamps such as the dos filesystem
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10463 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-12-15 09:23:50 +00:00
Axel Dörfler
dbef8d930c
As suggested by Ingo, the "subsystem" parameter is now a string. That allows
...
modules to use their module name directly.
Also introduced a whole range of reserved syscall functions in case we want
to add some more.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10458 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-12-14 17:09:06 +00:00
Axel Dörfler
b793d2a2bc
Cleaned up the disk device manager syscalls to look like the rest.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10457 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-12-14 17:05:56 +00:00
Axel Dörfler
2fe71062b7
Renamed the semaphore syscalls to the new scheme (_kern_ instead of sys_).
...
Small cleanup.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10453 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-12-14 16:06:34 +00:00
Axel Dörfler
c3c3d22f64
Implemented a generic syscall mechanism.
...
Minor cleanup in syscalls.h.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10451 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-12-14 15:46:53 +00:00