上一页 1 2 3 4 5 6 7 ··· 30 下一页
摘要: 控制输出: 在scons脚本调试中,输出是一个重要的环节,通过输出我们可以观察调试期间的步骤,便于定位问题 Help函数可以输出help相关的打印 Help(""" scons help command """) 当执行scons -h的时候,就会打印出相关的text scons: Reading 阅读全文
posted @ 2020-05-06 16:13 red_leaf_412 阅读(407) 评论(0) 推荐(0) 编辑
摘要: 依赖性: 和makefile一样,scons再次编译是取决于编译文件是否发生了变化。如果编译文件没有发生变化,那么scons是不会继续编译的。会出现如下打印: is up to date。就代表编译文件没有更新。 scons: done reading SConscript files. scons 阅读全文
posted @ 2020-04-28 10:09 red_leaf_412 阅读(509) 评论(0) 推荐(0) 编辑
摘要: 修改代码之后想找回历史代码怎么办? 在使用Pycharm、IDEA时可以直接查看本地历史代码,然后轻松恢复之前某个版本。但是,VS Code默认是不支持local history的,所以,仅凭Ctrl+z撤销操作是不行的。何况,撤销操作是把前面步骤所有的操作都撤销了,其中有很多是我们不需要的。 但是 阅读全文
posted @ 2020-04-23 12:40 red_leaf_412 阅读(614) 评论(0) 推荐(0) 编辑
摘要: Scons是依赖于python写的编译脚本,相对makefile来说,用起来更简单一些,不需要记太多的makefile语法。 安装方法: 1 安装python3。有些电脑上可能已经内置了python2。这个时候需要将python3设置为默认的python版本。 cd /usr/bin sudo rm 阅读全文
posted @ 2020-04-21 17:44 red_leaf_412 阅读(1625) 评论(0) 推荐(1) 编辑
摘要: Message queue的结构如下: 1 Parent属于内核对象,通过这个成员可以将消息队列挂到系统对象容器里面. Parent其实是一个ipc结构体,里面包含了挂起的线程 初始化状态如下: 2 msg_pool 是存放消息池的开始地址 3 msg_size 是每条消息的大小 4 max_msg 阅读全文
posted @ 2020-03-31 14:54 red_leaf_412 阅读(1838) 评论(1) 推荐(1) 编辑
摘要: 在Rt-thread中,定义了一个全局的系统定时器列表,当线程需要挂起的时候,就把线程内置的定时器将线程挂起到这个系统定时器列表中。这个列表维护一条双向链路,节点按照定时器的延时时间大小进行升序排列。定时器列表的定义如下: static rt_list_t rt_timer_list[RT_TIME 阅读全文
posted @ 2020-03-10 16:17 red_leaf_412 阅读(1473) 评论(0) 推荐(0) 编辑
摘要: 启动顺序: 1 rtthread_startup进行对象初始化 2 rt_application_init进行线程对象初始化 rt_thread_create 创建线程 1 调用rt_object_allocate(RT_Object_Class_Thread,name);获取线程对象并创建线程 ( 阅读全文
posted @ 2020-02-29 20:08 red_leaf_412 阅读(2065) 评论(0) 推荐(1) 编辑
摘要: 代码如下:#include <linux/module.h> #include <linux/fs.h> #include <linux/mm.h> #include <linux/init.h> #include <linux/cdev.h> #include <linux/slab.h> #in 阅读全文
posted @ 2020-02-24 20:46 red_leaf_412 阅读(1502) 评论(0) 推荐(0) 编辑
摘要: 我用的是EDMAX的免驱dongle用来做数据抓包。 1 首先执行ifconfig命令查看接口名字。这里是wlx74da38f2b5e5 2 安装aircrack-ng 3 执行sudo airmon-ng start wlx74da38f2b5e5将网卡设置为监听模式 这里注意wlx74da38f 阅读全文
posted @ 2020-02-11 19:44 red_leaf_412 阅读(1700) 评论(0) 推荐(0) 编辑
摘要: 前面的队列以及锁都是基于阻塞是的操作。要实现同步,还可以通过信号也就是异步的方式来进行。例如在往文件的写入字符后,发送一个信号。捕捉到信号后执行动作。这样就不会造成阻塞,之前的阻塞性IO和POLL,是调用函数进去检查,条件不满足是造成阻塞。 应用层启动异步通知机制就三个步骤: 1 调用signal函 阅读全文
posted @ 2020-02-09 10:08 red_leaf_412 阅读(443) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 ··· 30 下一页