问题标签 [mach]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c - 过滤器类型未声明?
我应该将一个Interrupt Filter
传递给一个函数,但问题是,我的 Xcode 总是告诉我该Filter
类型是未声明的..
这是我的代码的一部分:
我是新手Mac
,Xcode
所以我真的不知道在这种情况下我应该怎么做。
当函数实际上采用该类型的参数时,它如何抱怨它没有被定义?
macos - Mac SDK 库:里面有什么?foo.dylib vs foo.A.dylib vs foo.B.dylib
我在 SDK 中四处寻找,试图了解实际包含的内容。
我注意到 dylibs 有时会发布多个版本,例如
这些 .A 和 .B 版本有什么用?谁在使用什么?
linux - 使用文件的 MacOs 内核-用户空间通信
我想从内核创建一个文件,并且必须从用户空间访问该文件。其他通信方式(例如ioctl)不适合,因为用户空间应用程序只需要文件,而我没有它的源代码。
我需要在 MAC 上执行此操作。如果我使用 Linux,我会使用 sysfs,但在 MacO 上他们没有 sysfs,所以我决定最终使用 devfs
我创建了示例灵魂,一切正常,但问题是设备文件(devfs 文件)没有大小。用户空间代码检查文件大小并跳过该文件。我知道大小会有多大,但我不知道如何将其设置为 devfs 文件。
我不想在真实文件系统中创建文件,因为它可能很大。我想要的只是将读写重定向到我的内部函数。
FUSE ( http://en.wikipedia.org/wiki/Filesystem_in_Userspace ) 将是理想的,但这涉及用户空间守护进程。
有什么建议么?
go - GoLang / CGO:从 Go 调用 Mach API host_statistics() 时出现问题
我使用以下 C 代码片段来获取 OS X 上的 CPU 负载:
在阅读了 cgo 教程后,我尝试将这段代码移植到 Go。生成的代码如下所示:
但是,当我尝试构建代码时,我最终得到以下错误消息
我不明白为什么 cgo 抱怨这种类型。host_statistics() 的签名在 mach 标头中定义为:
ios - 如何从 EXC_BAD_ACCESS 中恢复?
我故意造成EXC_BAD_ACCESS
. 通过触发对NSObject
只读虚拟内存页面的写入。理想情况下,我想捕捉EXC_BAD_ACCESS
,将虚拟内存页面标记为读写,并像往常一样继续执行。这甚至可能吗?我编写的代码EXC_BAD_ACCESS
如下。
弱目标对象.h (ARC)
弱目标对象.m (ARC)
main.m (MRR)
ios - 如何找到 EXC_BAD_ACCESS 异常的地址?
在如何从 EXC_BAD_ACCESS 中恢复?,我想出了如何从 中恢复EXC_BAD_ACCESS
,但我将错误访问的指针存储在全局中。显然,这不会扩展。当我在 iOS 模拟器 (i386) 中运行代码时,我可以在我的函数内部看到调试器部分中的faultvaddr
寄存器。但是,它的值与从. 有没有办法动态获取这个值?Exception State Registers
catch_exception_raise
vm_allocate
鉴于catch_exception_raise
下面的功能,我将如何发现导致的地址EXC_BAD_ACCESS
?
go - Go 语言中的 Mach 端口和 Channel 是如何相互关联的?
在 XNU(OS X 和 iOS 的内核)中广泛用作 IPC 机制的 Mach 端口充当消息队列的端点。
众所周知,Go Channel 以 CAR Hoare 的通信顺序过程为模型。马赫端口怎么样?不管端口的安全性和权限属性以及 Go Channel 的类型安全性,它们在本质上是否以相同的模式工作?
ios - 当设备在 iOS 7 上进入睡眠状态时,clock_get_time/mach_absolute_time 停止更新
我的应用程序使用 mach_absolute_time 计算自上次触摸事件以来的滴答声,并在超过 10 分钟的空闲时间限制时将用户注销。
这一切在 iOS 6 上都可以正常工作,但我注意到它在 iOS 7 上的行为不正确。具体来说,当 iOS 7 设备被拔下(使用电池)时,似乎设备在进入睡眠状态后停止增加其滴答声控制台中的这一行(这发生在大约 5 分钟不活动后):
powerd[47] : 睡眠:使用 BATT(充电:99%)
因此,当我在 10 分钟后唤醒设备,并使用 mach_absolute_time 计算滴答声时,差异显示只有 5 分钟(实际上,已经过了 10 分钟)。
奇怪的是,一切正常,当设备插入电源时,滴答声继续运行。它从不显示设备在插入时将在控制台日志上进入睡眠状态(尽管屏幕确实关闭并且行为在视觉上与拔出时相同)。
我也尝试过使用clock_get_time,我在那里面临同样的问题。
当设备进入睡眠状态时,我可以在 iOS 7 中做些什么来保持 Mach 绝对时间滴答作响吗?我不想使用[[NSDate date] timeIntervalSince1970]
,因为用户能够操纵系统时间并绕过它。
感谢您的任何见解。
digits - 年份正则表达式或匹配除年份以外的所有内容
需要正则表达式来匹配除年份以外的所有内容
输出:
我试过
\d{4} or (/ *\([^)]*\) */g, "") or ^[12][0-9]{3}$
- 不工作。帮助!
macos - ctl_enqueuedata 内的 Osx 内核崩溃
我的代码使用 ctl_enqueuedata 进行内核用户通信。
我注意到有时(我无法真正重现它) - 我在 ctl_enqueuedata 内部崩溃了
当我使用调试器连接时,回溯如下
似乎套接字凭据为零。
怎么会这样。是内核错误还是我滥用了 ctl_enqueuedata?