![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
计算机基础
luoyajingfeng2
这个作者很懒,什么都没留下…
展开
-
CPU 和 GPU 的区别是什么
作者:知乎用户链接:https://www.zhihu.com/question/19903344/answer/96081382来源:知乎CPU和GPU之所以大不相同,是由于其设计目标的不同,它们分别针对了两种不同的应用场景。CPU需要很强的通用性来处理各种不同的数据类型,同时又要逻辑判断又会引入大量的分支跳转和中断的处理。这些都使得CPU的内部结构异常复杂。而GPU面对的则是类型高...转载 2019-06-03 14:49:02 · 6260 阅读 · 0 评论 -
联合体union
当多个数据需要共享内存或者多个数据每次只取其一时,可以利用联合体(union)。在C Programming Language 一书中对于联合体是这么描述的: 1)联合体是一个结构; 2)它的所有成员相对于基地址的偏移量都为0; 3)此结构空间要大到足够容纳最"宽"的成员;4)其对齐方式要适合其中所有的成员;下面解释这四条描述: 由...转载 2019-06-17 14:00:29 · 164 阅读 · 0 评论 -
VxWorks下几种定时延时方法的小结
在应用编程的时候,通常会碰到需要一个任务在特定的延时之后执行一个指定的动作,如等待外设以确保数据可靠,控制扬声器发声时间以及串口通信超时重发等。这就需要利用定时器机制来计量特定长度的时间段。vxWorks作为实时嵌入式系统,提供多样的定时接口函数。下面结合我的项目经历和网上的参考资料列举一些常用的定时方式,并说明其注意事项。一、taskDelaytaskDelay(n)使...转载 2019-07-26 14:21:33 · 1654 阅读 · 0 评论 -
VxWorks信号、中断处理与定时机制
为了获得尽可能的、最快的中断反应时间,VxWorks的中断处理程序(ISRs)运行在它们特定的上下文中(独立于任何任务的上下文)。信号支持软件信号功能。信号可以异步改变任务控制流。获得信号的任务立即挂起当前的执行,在下次调度它运行时转而执行指定的信号处理程序。信号处理程序在信号接收任务的上下文中执行,使用该任务的堆栈。在任务阻塞时,信号处理程序仍可被唤醒。与用于任务间通信相比,信号...转载 2019-07-26 16:52:19 · 1835 阅读 · 0 评论 -
centos防火墙开启、关闭、查看状态。
一、.对于centos7自带的防火墙的相关指令systemctl stop firewalld.service #停止firewallsystemctl disable firewalld.service #禁止firewall开机启动systemctl status firewalld.service #查看firewall的状态二、iptables防火墙的相关状态关闭虚拟机...转载 2019-08-02 13:54:00 · 189 阅读 · 0 评论 -
#pragma pack(push) 和#pragma pack(pop) 以及#pragma pack()
我们知道结构体内存对齐字节可以通过#pragma pack(n) 的方式来指定。但是,有没有想过一个问题,某些时候我想4字节对齐,有些时候我又想1字节或者8字节对齐,那么怎么解决这个问题呢?此时,#pragma pack(push) 和#pragma pack(pop) 以及#pragma pack()应运而生。看测试代码:(说明,64位GCC,默认8字节对齐)屏蔽了的代码选别...转载 2019-09-03 11:44:01 · 2054 阅读 · 1 评论 -
abs相关
c中的函数申明为 int abs(int num);正常情况下,num为0或正数时,函数返回num值;当num为负数且不是最小的负数时(不要问我最小的int类型负数是多少,上面那个图里面有真相),函数返回num的对应绝对值数,即将内存中该二进制位的符号位取反,并把后面数值位取反加一;当num为最小的负数时(即0x80000000),由于正数里int类型32位表示不了这个数的绝对值,...原创 2019-09-03 11:45:00 · 284 阅读 · 0 评论