美文网首页
mach内核系列(二)

mach内核系列(二)

作者: SpringAlways | 来源:发表于2020-07-22 10:31 被阅读0次

capability

是一个保护引用的概念。把指定和授权结合在一起,防劫持。这种能力通常由系统内核(通常是微内核)提供的软件形式实现。计算成本和硬件实现复杂度相比可忽略不计。

mach port

mach port是capability. 本质上和unix的pipe管道类似。是由系统内核(通常微内核)实现的不可伪造的通信管道。
这个port和我们平时的端口Port基本一致。端口其实可以理解为管道。就是一种能力,由内核提供,不可伪造。

每个port都关联了一个接收权限和一个或多个发送权限以及发送一次的权限。也就是有一个reciever,一个或多个sender(sender数组),是个单向通信通道。只有使用相应的port权限,才能访问port.这个由mach内核强制规定。

内核队列虽然可以存放很多消息,但也有满的时候。如果满了,则send操作被阻塞,直到队列有空间。(这个阻塞可以通过超时机制中断。中断后比如执行丢弃)

接收权指定一个队列,并授权队列持有者从队列中取出消息。创建群发权限和发送一次权限。
发送和一次发送权限指定一个队列,并授权保留将消息放入队列(在一次发送权限的情况下,是一条消息)。 使消息入队等效于调用功能。

port在没有权限绑定时,自动销毁。
端口全局唯一。

参考
https://www.gnu.org/software/hurd/capability.html
https://www.gnu.org/software/hurd/microkernel/mach/port.html

相关文章

  • mach内核系列(二)

    capability 是一个保护引用的概念。把指定和授权结合在一起,防劫持。这种能力通常由系统内核(通常是微内核)...

  • mach内核系列(一)

    mach task 概念 mach task是资源、虚拟地址空间、端口名空间的集合。 特点 task依赖线程来执行...

  • Mach overview (Mach概述)

    Mach overview (Mach概述) OS X内核的基本服务和基元都是基于Mach 3.0的。苹果已经修改...

  • Mach-O文件格式

    Mach-O文件结构 Mach-O(Mach Object)是一种基于Mach内核的文件格式。iOS系统生成的可执...

  • Mach-o格式头部结构

    Mach-o格式,是Mach操作系统内核(Mac、iOS系统的内核)主要支持的可执行文件格式。 用otool工具可...

  • 深入解析Mac OS X & iOS 操作系统 学习笔记

    Mach 原语:一切以消息为媒介 XNU 的核心是Mach 微内核。 Mach 是 OS X 和 iOS 的核心中...

  • Mach 的深入理解

    Mach 原语:一切以消息为媒介 XNU 的核心是Mach 微内核。 Mach 是 OS X 和 iOS 的核心中...

  • GCD源码分析(一)

    Mach Mach是XNU的核心,被BSD层包装。XNU由以下几个组件组成: MACH内核进程和线程抽象 虚拟内存...

  • 深入解析Mac OS X & iOS 操作系统 学习笔记

    Mach 虚拟内存 在内核管理最重要的资源中,出了CPU本身,就是内存了。Mach 和所有内核一样,代码中有很大一...

  • iOS多线程 之 NSThread详解

    NSThread是对内核mach kernel中的mach thread的封装,所以,每一个NSThread的对象...

网友评论

      本文标题:mach内核系列(二)

      本文链接:https://www.haomeiwen.com/subject/fiqwkktx.html