ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

从 UART 起始位到 ABAP 异步任务,理解两种异步背后的时间解耦、并发与可靠性

从 UART 起始位到 ABAP 异步任务,理解两种异步背后的时间解耦、并发与可靠性 最近我们在计算机网络和通信原理里经常会碰到「异步通信」这个词,而回到 SAP ABAP 开发现场,同一个词又会出现在 aRFC、bgRFC、后台任务、并行处理、事件驱动这些技术里。名称完全一样,很容易产生一种直觉,似乎 UART 的异步串行通信和 ABAP 的异步编程属于同一种技术,只不过一个运行在硬件上,一个运行在企业应用服务器上。这种理解只对了一小部分。真正能够把两者联系起来的,不是串口、电平、RFC 或 Work Process,而是一个更抽象的概念,也就是通信双方不再依靠一个持续锁步的共同时间节拍来推进整个过程,而是利用某种边界、事件、任务标识、协议或者状态重新建立协调关系。一旦抓住这个角度,UART 的 Start Bit、Stop Bit,ABAP 的 Task ID、Callback、bgRFC Unit、Queue、Commit,看起来相隔非常遥远的技术,实际上会呈现出一些很有意思的对应关系。异步串行通信最典型的代表就是 UART。Microchip 对 UART 异步模式的定义非常直接,发送端和接收端没有共同传输时钟,字符通过 Start Bit、Data Bit、可选 Parity Bit 和 Stop Bit 组成帧,双方必须采用兼容的 Baud Rate 和帧格式。常见的8N1就是 8 个数据位、无奇偶校验位、1 个停止位。假设我们的设备正在以9600 8N1发送字符A。线路空闲时保持逻辑高电平。发送器准备发送数据时,把线路拉低形成 Start Bit。接收器看到这个电平变化,就知道一个新字符开始了。接收器并没有从发送器那里拿到一根持续的 Clock
返回列表