* Adding msg{rcv,snd,get,ctl} syscalls to the system
* Add message queue init function call to main.cpp git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27417 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
@@ -15,6 +15,8 @@
|
|||||||
|
|
||||||
__BEGIN_DECLS
|
__BEGIN_DECLS
|
||||||
|
|
||||||
|
extern void xsi_msg_init();
|
||||||
|
|
||||||
/* user calls */
|
/* user calls */
|
||||||
int _user_xsi_msgctl(int messageQueueID, int command, struct msqid_ds *buffer);
|
int _user_xsi_msgctl(int messageQueueID, int command, struct msqid_ds *buffer);
|
||||||
int _user_xsi_msgget(key_t key, int messageQueueFlags);
|
int _user_xsi_msgget(key_t key, int messageQueueFlags);
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ struct fd_info;
|
|||||||
struct fd_set;
|
struct fd_set;
|
||||||
struct fs_info;
|
struct fs_info;
|
||||||
struct iovec;
|
struct iovec;
|
||||||
|
struct msqid_ds;
|
||||||
struct net_stat;
|
struct net_stat;
|
||||||
struct pollfd;
|
struct pollfd;
|
||||||
struct rlimit;
|
struct rlimit;
|
||||||
@@ -101,6 +102,16 @@ extern int _kern_xsi_semctl(int semID, int semNumber, int command,
|
|||||||
extern status_t _kern_xsi_semop(int semID, struct sembuf *semOps,
|
extern status_t _kern_xsi_semop(int semID, struct sembuf *semOps,
|
||||||
size_t numSemOps);
|
size_t numSemOps);
|
||||||
|
|
||||||
|
/* POSIX XSI message queue syscalls */
|
||||||
|
extern int _kern_xsi_msgctl(int messageQueueID, int command,
|
||||||
|
struct msqid_ds *buffer);
|
||||||
|
extern int _kern_xsi_msgget(key_t key, int messageQueueFlags);
|
||||||
|
extern ssize_t _kern_xsi_msgrcv(int messageQueueID, void *messagePointer,
|
||||||
|
size_t messageSize, long messageType, int messageFlags);
|
||||||
|
extern int _kern_xsi_msgsnd(int messageQueueID,
|
||||||
|
const void *messagePointer, size_t messageSize,
|
||||||
|
int messageFlags);
|
||||||
|
|
||||||
/* team & thread syscalls */
|
/* team & thread syscalls */
|
||||||
extern thread_id _kern_load_image(const char* const* flatArgs,
|
extern thread_id _kern_load_image(const char* const* flatArgs,
|
||||||
size_t flatArgsSize, int32 argCount, int32 envCount,
|
size_t flatArgsSize, int32 argCount, int32 envCount,
|
||||||
|
|||||||
@@ -39,6 +39,7 @@
|
|||||||
#include <Notifications.h>
|
#include <Notifications.h>
|
||||||
#include <port.h>
|
#include <port.h>
|
||||||
#include <posix/realtime_sem.h>
|
#include <posix/realtime_sem.h>
|
||||||
|
#include <posix/xsi_message_queue.h>
|
||||||
#include <posix/xsi_semaphore.h>
|
#include <posix/xsi_semaphore.h>
|
||||||
#include <real_time_clock.h>
|
#include <real_time_clock.h>
|
||||||
#include <sem.h>
|
#include <sem.h>
|
||||||
@@ -170,6 +171,7 @@ _start(kernel_args *bootKernelArgs, int currentCPU)
|
|||||||
TRACE("init POSIX semaphores\n");
|
TRACE("init POSIX semaphores\n");
|
||||||
realtime_sem_init();
|
realtime_sem_init();
|
||||||
xsi_sem_init();
|
xsi_sem_init();
|
||||||
|
xsi_msg_init();
|
||||||
|
|
||||||
TRACE("init VM threads\n");
|
TRACE("init VM threads\n");
|
||||||
vm_init_post_thread(&sKernelArgs);
|
vm_init_post_thread(&sKernelArgs);
|
||||||
|
|||||||
@@ -17,6 +17,7 @@
|
|||||||
#include <vm.h>
|
#include <vm.h>
|
||||||
#include <thread.h>
|
#include <thread.h>
|
||||||
#include <posix/realtime_sem.h>
|
#include <posix/realtime_sem.h>
|
||||||
|
#include <posix/xsi_message_queue.h>
|
||||||
#include <posix/xsi_semaphore.h>
|
#include <posix/xsi_semaphore.h>
|
||||||
#include <sem.h>
|
#include <sem.h>
|
||||||
#include <port.h>
|
#include <port.h>
|
||||||
|
|||||||
Reference in New Issue
Block a user