base: individual implementations of pager-object

ref #935
This commit is contained in:
Martin Stein
2013-11-04 17:04:27 +01:00
committed by Norman Feske
parent d24ed9783b
commit 20e91d0b60
9 changed files with 38 additions and 14 deletions

View File

@@ -79,14 +79,10 @@ namespace Genode {
*/
virtual int pager(Ipc_pager &ps) = 0;
void wake_up()
{
/* notify pager to wake up faulter */
Msgbuf<16> snd, rcv;
Native_capability pager = cap();
Ipc_client ipc_client(pager, &snd, &rcv);
ipc_client << this << IPC_CALL;
}
/**
* Wake up the faulter
*/
void wake_up();
/**
* Assign user-level exception handler for the pager object

View File

@@ -0,0 +1,27 @@
/*
* \brief Standard implementation of pager object
* \author Martin Stein
* \date 2013-11-04
*/
/*
* Copyright (C) 2013 Genode Labs GmbH
*
* This file is part of the Genode OS framework, which is distributed
* under the terms of the GNU General Public License version 2.
*/
/* Genode includes */
#include <base/pager.h>
using namespace Genode;
void Pager_object::wake_up()
{
/* notify pager to wake up faulter */
Msgbuf<16> snd, rcv;
Native_capability pager = cap();
Ipc_client ipc_client(pager, &snd, &rcv);
ipc_client << this << IPC_CALL;
}