你连接的是真实的 ChinaNet 吗?

昨天看到公司 OA 上的一个通知,电信会在近期到免费安装 ChinaNet 无线接入服务。想起了之前一直没有解决的问题,如何鉴定无线接入点是真实的 ChinaNet 呢?

如果有人使用自己的无线 AP 架设一个 SSID 同电信相同,认证网关和页面的行为和电信也相同,怎么才能不被骗取认证信息呢?

Over!

Linux 内核模块间通信有什么好的方法?

今天遇到一个问题,要求当 LID 事件触发时,禁用了触摸板设备,并且在内核中实现此功能。现在内核里 Platform 驱动中可以接收到 LID 事件,而 Sentelic 驱动才可以控制设备启用或禁用。这就要求内核 Platform 驱动 和 Sentelic 驱动通信。目前我想到两个方法具体实现:

1. 比较简单的实现方法是在 Sentelic 驱动中导出所需求的方法,然后在 Platform 中调用这些方法。这样虽然简单,但是让我感觉到这两个模块之间的耦合变大了,感觉有点怪怪的,还需要解决依赖关系问题。

2. 使用内核通知器,当 Platform 驱动收到 LID 事件时通过内核提供的方法向内核报告此事件,Sentelic 关注此类事件,并作出正确的响应。这个方法也有一个不好的地方,Sentelic 并不一定都需要作这类动作,因为只有 Sentelic 和这个特定的 Platform 组合时才有这样的需求。

这个问题应该如何解决才能比较好呢?给些建议吧。

Over!

使用 D-BUS 连接桌面应用程序

D-BUS 本质上是 进程间通信(inter-process communication)(IPC)的一个实现。不过,有一些 特性使得 D-BUS 远远不是“只是另一个 IPC 实现”。有很多不同的 IPC 实现,因为每一个都定位于解决 特定的明确定义的问题。CORBA 是用于面向对象编程中复杂的 IPC 的一个强大的解决方案。DCOP 是一个 较轻量级的 IPC 框架,功能较少,但是可以很好地集成到 K 桌面环境中。SOAP 和 XML-RPC 设计用于 Web 服务,因而使用 HTTP 作为其传输协议。D-BUS 设计用于桌面应用程序和 OS 通信。
Continue reading 使用 D-BUS 连接桌面应用程序