摘要: 操作系统:Ubuntu 16.04 32位 虚拟机:VMware 模拟器:QEMU 之前有一台centos 64位虚拟机,使用源码安装配置环境,出了一些列问题,最终环境都已经配好了,也能够在qemu上运行Xv6,但是想跟着lab做实验的时候,各种编译器内部错误,实在懒得折腾这些了,于是决定新安装一台 阅读全文
posted @ 2019-10-30 22:38 AlexAlex 阅读(3310) 评论(0) 推荐(0) 编辑
摘要: 昨天接到同事给安排的新任务,测试系统性能;网上查了些资料,目测perf功能很强大,而且是内核源码自带的,编译安装即可使用;看了下自己的虚拟机,没有内核源码,好吧,装一个; 查看一下系统版本: 1 #cat /etc/redhat-release 2 CentOS Linux release 7.5. 阅读全文
posted @ 2019-10-30 22:35 AlexAlex 阅读(12024) 评论(0) 推荐(0) 编辑
摘要: 算法比较 稳定性 插入排序,冒泡排序,二路归并排序和基数排序是稳定的排序方法; 选择排序,希尔排序,快速排序和堆排序是不稳定的排序方法; 复杂度 排序方法 平均时间 最坏情况 辅助空间 插入排序 O(n^2) O(n^2) O(1) 希尔排序 O(nlogn) O(nlogn) O(1) 冒泡排序 阅读全文
posted @ 2019-10-30 22:29 AlexAlex 阅读(204) 评论(0) 推荐(0) 编辑
摘要: 每次按下键盘的时候,总觉得自己连一句话都说不明白; 18年勉强也算是我人生中的一次转折了,这一年,经历了很多,也得到了很多; 换工作; 换了工作,转到一个未接触到的领域; 之前跟朋友一起做电商平台,一直很累,付出了非常多的努力,然而收获平平,甚至很多时候,我会怀疑自己为什么要这么努力对待眼前的工作; 阅读全文
posted @ 2019-10-30 19:45 AlexAlex 阅读(223) 评论(0) 推荐(0) 编辑
摘要: 最近想找一个C语言处理嵌套结构体和结构体数组的json库,理想的是能够很容易处理复杂结构体嵌套,并且使用简单的,但是没找到比较合适的,于是打算自己封装一个; 两个问题: C语言结构体本身没有元数据,这也就没法在生成过程中自动分析类型进行处理,所以,需要生成对应结构体的元数据信息,根据元数据完成对结构 阅读全文
posted @ 2019-10-30 19:44 AlexAlex 阅读(3158) 评论(2) 推荐(0) 编辑
摘要: 1 int snprintf(char *str, size_t size, const char *format, ...); 从用snprintf开始,size参数一直传的都是buff_size-1,像这样: 1 int main() 2 { 3 char *a = "hello"; 4 5 c 阅读全文
posted @ 2019-10-30 19:43 AlexAlex 阅读(489) 评论(0) 推荐(0) 编辑
摘要: 问题 一段老代码,两个线程,一个线程调用sem_wait等待信号量,另外一个线程在某失败分支会调用sem_init清信号量,结果导致sem_wait线程无法被唤醒; 分析 Linux manpage 从描述中可见,初始化一个已经被初始化的信号量会导致未定义行为; 1 NAME 2 sem_init 阅读全文
posted @ 2019-10-30 19:41 AlexAlex 阅读(1652) 评论(0) 推荐(0) 编辑
摘要: 计划没有变化快,周一计划的任务几乎没怎么做,时间完全交给了一个BUG; 最近大家在做新主板的功能,同事说DeviceNet不通,尽管我对DeviceNet一点不懂,不过好歹之前测过CAN模块在新主板上的功能,于是负责起了这个bug; 电脑连上CAN分析仪,包都看不到,上哪通去?搞硬件的同时出差了,没 阅读全文
posted @ 2019-10-30 19:40 AlexAlex 阅读(185) 评论(0) 推荐(0) 编辑
摘要: 这周六没去加班做新人作业,因为新人作业已经做完了;开心! 孩子晚上十点多才睡,这才到了真正的自由时间,无人打扰,可以安心学习; 晚上七点多,一个滴滴的朋友给我发了一个问题,向我咨询下这个问题的思路;大概跟他分析了一下问题的可疑点;十点多,他跟我说,我的思路是对的,偶现问题变成了必现,心情大好;然后聊 阅读全文
posted @ 2019-10-30 19:39 AlexAlex 阅读(472) 评论(0) 推荐(1) 编辑
摘要: 问题 做了个测试板子的程序,里面有一项写铁电的功能,要求写入之后立即断电,重启后校验数据准确性;铁电设计是通过内存地址直接映射的,于是,使用mmap直接映射了/dev/mem文件,自然地写入之后使用msync进行同步,最后使用munmap解映射; 然而,当我运行这段程序的时候,发现msync的MS_ 阅读全文
posted @ 2019-10-30 19:36 AlexAlex 阅读(1858) 评论(0) 推荐(0) 编辑
摘要: 疑问 两个线程分别有不同的调度策略,一个SCHED_FIFO,一个SCHED_OTHER,按照之前的理解,SCHED_FIFO实时线程一定会占用CPU一直运行,导致SCHED_OTHER的普通线程得不到CPU,事实是这样么? 验证 写了一小段代码,一个是验证SCHED_FIFO的高优先级线程会不会抢 阅读全文
posted @ 2019-10-30 19:32 AlexAlex 阅读(7652) 评论(0) 推荐(2) 编辑
摘要: 先抱怨一波,大国庆节的放假前一天的下班前15分钟,通知让我加班,因为一个Redis的bug,而这个bug我在1个半小时之前刚听说了个大概,心里很不情愿; 好了,说正事; 问题现象: bug是这样的,两个线程同时请求Redis服务器,但是只有一个线程收到了回复,另一个线程卡死; 拿到这个问题,我先是想 阅读全文
posted @ 2019-10-30 18:07 AlexAlex 阅读(1488) 评论(0) 推荐(0) 编辑
摘要: 前几天测试软件在多核上的性能,需要按照比例吃各个CPU,查了查资料,撸了下面一小段代码; 1 #include <unistd.h> 2 #include <stdlib.h> 3 #include <stdio.h> 4 #include <time.h> 5 6 #define __USE_GN 阅读全文
posted @ 2019-10-30 17:59 AlexAlex 阅读(267) 评论(0) 推荐(0) 编辑
摘要: 以运动学第一篇文章中的坐标系和DH参数表为基础,可以对其反解进行推导,具体过程如下: 因公式太多,无法直接复制粘贴,故生成图片; 阅读全文
posted @ 2019-10-30 17:58 AlexAlex 阅读(1305) 评论(0) 推荐(0) 编辑
摘要: 连杆变换矩阵 概括起来,求正解即是求坐标系{6}相对于坐标系{0}的变换,这个问题可以分解成6个子问题,即确定6个坐标系{i}相对于坐标系{i-1}的表示,每个变换过程又包含4个子过程,即绕X(i-1)轴旋转alpha(i-1),沿X(i-1)轴平移a(i-1),绕Z(i)轴旋转theta(i),沿 阅读全文
posted @ 2019-10-30 17:57 AlexAlex 阅读(1853) 评论(0) 推荐(0) 编辑
摘要: 刚来新公司不久,部门给安排了新人作业,我被分到的任务是求标准6轴机器人的正反解,以及利用就近原则选择最优解。从今天开始,逐步将这部分内容总结出来; 本文以及后续文章均使用改进DH法; 连杆坐标系: 坐标系的建立方法(摘自机器人学导论): 找出各个关节轴,并标出这些轴线的延长线; 找出关节轴i和i+1 阅读全文
posted @ 2019-10-30 17:55 AlexAlex 阅读(5176) 评论(0) 推荐(0) 编辑
摘要: 快两个月没写博客了; 这两个月做了一个决定,以后一直在沈阳生活了; 全家户口也都迁了过来; 工作上顺利入职了新松; 人到中年,迷茫、焦虑,总归要做一个选择; 既来之,则安之; 好好工作,好好生活; 阅读全文
posted @ 2019-10-30 15:01 AlexAlex 阅读(179) 评论(0) 推荐(0) 编辑
摘要: 晚上媳妇儿整理儿子照片,整理了一部分说太累了;问她还有多少没整理,说还有几十个G…问怎么整理,说把图片根据生日按月份分开;我一听,明显是个小脚本就搞定的事情;虽然没怎么太写过python,不过撸起袖子就是干;一边查一边写,轻松搞定;一条命令,几十个G图片一会儿就分好了;媳妇儿很开心; 会写代码的意义 阅读全文
posted @ 2019-10-30 15:00 AlexAlex 阅读(277) 评论(0) 推荐(1) 编辑
摘要: 阅读全文
posted @ 2019-10-30 14:58 AlexAlex 阅读(846) 评论(0) 推荐(1) 编辑
摘要: 从决定把学习人工智能作为第二方向之后,到现在已经过去一个多月了,做的唯一的工作就是补数学;白天工作,晚上看几个小时数学,算是把微积分看完了,很多习题也刷了几遍;这么多年没碰数学,从开始学数学的恐惧,到现在的平常心,变化很大;有些事情看着困难,一旦动起手来,持续些日子,总归还是有很大收获; 时间真快, 阅读全文
posted @ 2019-10-30 14:55 AlexAlex 阅读(163) 评论(0) 推荐(1) 编辑