C语言里,每个源文件是一个模块,头文件为使用该模块的用户提供接口。接口指一个功能模块暴露给其他模块用以访问具体功能的方法。使用源文件实现模块的功能,使用头文件暴露单元的接口。用户只需包含相应的头文件就可使用该头文件中暴露的接口。
本文通过对Linux下串口驱动的分析,由最上层的C库,到操作系统系统调用层的封装,再到tty子系统的核心,再到一系列线路规程,再到最底层的硬件操作。
再见十月,再见S10,别骂苏宁,你好十一月;忽然想水一篇和技术无关的,一起来说一说如何提高自己的学习力,个人拙见了,我知道你还没睡!
之前做了一个项目,参考了开源项目本杰明电调(去GitHub搜VESC)或者simpleFOC也不错,总之都挺香;换做自己写,原本以为会挺简单的,没想到入坑了,而且还挺深的,烧了不少片子,烧了不少板子,感觉身体被掏空,总结一下整个算法的流程。
你知道哪个操作系统是世界上最受欢迎的操作系统吗?是Linux!它一般运行于服务器和超级计算机上,我们日常访问网站背后的数百万台服务器很有可能运行着的操作系统就是Linux。在本文中,我们将学习Linux是什么以及它来自何处,常用的Linux知识以及想要在这个令人兴奋的平台上畅游所需的命令。
说到指针,估计还是有很多小伙伴都还是云里雾里的,有点“知其然,而不知其所以然”。但是,不得不说,学了指针,C语言才能算是入门了。指针是C语言的「精华」,可以说,对对指针的掌握程度,「直接决定」了你C语言的编程能力。
现在基本上每周末都要去上国硕的课提升自己的非技术技能,同时也希望两年后顺利拿到硕士学位,完成我人生第一阶段的目标;所以最近一段时间个人基本上忙得不可开支,既需要完成老师布置的课题,也需要完成课程总结等等。
之前有位小伙伴留言问道tee工具的代码在哪儿?这篇文章我们就来简单分享一下。
宏的使用,大家经常会用,但是一般只是简单定义一个符号常量,类似于 #define WHEEL_SCALE_MM 0.53f、 #define LOG_I(tag, text_fmt, ...) log_i(tag, text_fmt, ##__VA_ARGS__) ,但是除此之外还有宏还有个##粘贴作用,可以配合#define这个常量表达式,可以做成一个宏定义指针函数列表,继而查询执行函数。话不多说,我们开始今天的分享,首先还是会进行一下常规的描述,再分享"##"粘贴的妙用。
在Linux下的开发中,printf打印调试信息默认输出到标准输出 stdout (即屏幕/终端)中。我们也可以使用输出重定向技术输出到指定文件中,输出重定向即是把原本要输出到屏幕的信息写入到指定文件中。
作为Sharding-JDBC 分库分表实战系列的开篇文章,我们在前文中回顾了一下分库分表的基础知识,对分库分表的拆分方式有了一定的了解,下边我们介绍一下 Sharding-JDBC框架和快速的搭建一个分库分表案例,为讲解后续功能点准备好环境。
研究过AQS源码的小伙伴们应该知道,AQS是JUC的核心,而CLH锁又是AQS的基础,说核心也不为过,因为AQS就是用了变种的CLH锁。如果要学好Java并发编程,那么必定要学好JUC;学好JUC,必定要先学好AQS;学好AQS,那么必定先学好CLH。因此,这就是我们为什么要学习CLH锁的原因。
说到web服务器,想必大多数人首先想到的协议是http,那么http之下则是 tcp。本文将通过tcp来实现一个简单的web服务器。本篇文章将着重讲解如何实现,对于http与tcp的概念本篇将不过多讲解。
五种IO模型包括:阻塞IO、非阻塞IO、IO多路复用、信号驱动IO、异步IO。
学习一个知识之前,我觉得比较好的方式是先理解它的来龙去脉:即这个知识产生的过程,它解决了什么问题,它是怎么样解决的,还有它引入了哪些新的问题(没有银弹),这样我们才能比较好的抓到它的脉络和关键点,不会一开始就迷失在细节中。所以,在学习分布式系统之前,我们需要解决的第一个问题是:分布式系统解决了什么问题?
本篇将会通过三国中的赤壁之战来讲述周瑜、黄盖和诸葛亮是怎么把服务雪崩玩到极致的。
对于某些对时间精度要求较高的程序,用 c 写延时显得有些力不从心,故需用到汇编程序。本人通过测试,总结了 51 的精确延时函数(在 c 语言中嵌入汇编)分享给大家。
STVP是ST早期的一款下载编程工具,支持早期的ST早期的芯片(比如ST7系列),也支持STM8、 STM32。该工具虽然相对ST-LINK utility、STM32CubeProg比较老,但该工具官方在2017年还进行了维护,目前还处于ACTIVE(活跃)状态。
变量是程序中重要的一部分,产品中很多业务代码都是变量起到了关键作用。传感器采集的数据、通信中传输的数据、算法中的数据等这些数据都需要借助变量这个东西来实现。我们为什么要将变量、数组(例如表或函数)存储到特定的地址?
先说内存 柿子捡软的捏,以前做项目的时候被大小端的问题坑过,那种酸爽就像蓝天白云,晴空万里忽然暴风雨,突如其来的BUG,让原本不充裕的时间更加雪上加霜;虽然很基础,但是能力有限,也难免出现错误和纰漏,请各位大佬们在讨论中无情指正我。