Oracle® Solaris 11.2 デバイスドライバの記述

印刷ビューの終了

更新: 2014 年 9 月
 
 

ユーザーマッピングへのカーネルメモリーの関連付け

一部のデバイスドライバでは、カーネルメモリーを割り当て、そのメモリーにユーザープログラムから mmap(2) 経由でアクセスできるようにしなければならない場合があります。たとえば、2 つのアプリケーション間で通信を行うための共有メモリーを設定する場合が挙げられます。また、ドライバとアプリケーションとの間でメモリーを共有する場合なども挙げられます。

カーネルメモリーをユーザーアプリケーションにエクスポートする場合は、次の手順に従います。

  1. ddi_umem_alloc(9F) を使用してカーネルメモリーを割り当てます。

  2. devmap_umem_setup(9F) を使用してメモリーをエクスポートします。

  3. メモリーが不要になったら、 ddi_umem_free(9F) を使用してメモリーを解放します。