Rate Monotonic Scheduling algorithm

这篇文章写得不错 http://barrgroup.com/embedded-systems/How-To/RMA-Rate-Monotonic-Algorithm 另外rtems的官方文档也有类似说明 https://docs.rtems.org/doc-current/share/rtems/html/c_user/Rate-Monotonic-Manager-First-Deadline-Rule.html 总结以下几点: RMS 是一个优化的静态优先级硬实时调度算法,如果能被其他静态优先级调度算法

rtems 4.11 杂记

object id task, message queue, semaphore, memory region, memory partition, timer, port, rate monotonic period 都是对象,对象引用时都用ID,32位的ID定义如下 位 作用 0-15 object index 16-23 node (cpu) 24-26 API 27-31 class 其中每一个字段都可以通过 rtems

rtems 4.11 部分m4文件分析

本来想把configure.ac和各种m4文件分析明白,发现有点困难,不过好在也能理解一些。 基本教程 首先要明白m4,参见这个教程,写得不错,

rtems 4.11 IRQ (arm,beagle)

arm IRQ入口在 cpukit/score/arm/arm_exec_interrupt.S 中,其中BSP最关心就是 bl bsp_interrupt_dispatch 这句,看看beagle BSP的实现, c/src/lib/libbsp/arm/beagle/ir

rtems 4.11 启动流程(arm, beagle)

请参照官方的 bsp_howto 文档,对arm来说,首先执行的文件是start.S start.S c/src/lib/libbsp/arm/shared/start/start.S 1、从 _start 开始执行 2、关CPU中断,初始化寄存器,设置好各mode的栈,调

编译openocd

git clone openocd ./configure –enable-jlink 需要libusb-1.x 下载libusb-1.0.20 ./configure –disable-udev –prefix=/usr 因为centos 7 没有libudev 估计是被systemd-udevd

rtems 4.11 工具链

4年前,曾经把rtems4.10移植到atmel 9263上,要不是当时移植的git仓库还在的话,真是不相信自己居然还干过这事。所以这次再捡起

scapy windows install

最近有点扫描网络的需求,都说scapy好,但是安装是个事(当然指的是windows安装) 有个scapy3k,支持python3,可惜需要po

python创建迅雷批量任务

其实不是真的创建了批量任务,而是用python创建一个文本文件,每行一个要下载的链接,然后打开迅雷,复制文本文件的内容,迅雷监测到剪切板变化

ubuntu boost.python

安装boost(未尝试只安装 libboost-python-dev) sudo apt-get install libboost-all-dev 新建hello_ext.cpp,输入以下代码 1 char const \*greet() { 2 return "hello world"; 3

安装 comtypes 时的问题解决(转载)

转载地址:http://idaemon.net/post-213.html Reference: http://www.dev-club.net/xiangxixinxi/22010072906013419/201012250940122.html 下载地址: http://sourceforge.net/projects/comtypes/files/ 不建议使用win32安装包,遇到问题无法调试和修改

netbeans xdebug

xdebug配置 装了wamp后,xdebug默认就安装好了,为了能够用netbeans远程调试,配置文件里得加几句 [xdebug] xdebug.remote\_enable = on xdebug.remote\_handler=dbgp xdebug.remote\_host=localhost xdebug.remote\_port=9000 Netbea

STM32 I2C

STM32 I2C 搞了几天了,比较郁闷,写点东西给那些正在郁闷的同志 // 好使的,也是范例的代码 cnt = TIME\_OUT; while (cnt-- && !I2C\_ChechEvent(I2C2, XXX)); if (!cnt) goto err; // 不好使,总是超时 cnt = TIME\_OUT; while (!I2C\_ChechEvent(I2C2, XXX)) { cnt--; if (cnt