linux内核
一墨一飞花
人生没有白走的路,每一步都算数。成为最好的自己。
展开
-
对于Linux内核tty设备的一点理解
虽然一直做嵌入式Linux,宿主机和开发板通信天天都在用tty设备通信,但是其实自己对TTY设备及终端的概念认识几乎是0。对于Linux内核的终端、tty、控制台等概念的认识很模糊。由于在学习的时候碰到了重定向console的问题,所以借机学习下tty的知识。以下是我对tty的认识总结,信息来源于网络和内核文档。参考资料见文章末尾。tty一词源于Teletypes,或Teletypewrit...转载 2019-12-03 08:22:49 · 929 阅读 · 0 评论 -
printf函数从应用层到内核的调用
接着上一节讲。在用户程序中调用printf,会输出数据,我们知道最好肯定会进入到内核里运行,因为数据是由硬件通过串口等进行输出的,必定需要调用硬件的驱动程序。示例程序如下:test.c#includeint main(){ int i = 1; printf("number is : %d !\n ,i"); return 0;}我们通过 gcc -E tes...转载 2019-12-02 15:34:31 · 1644 阅读 · 0 评论 -
linux内核之spin lock
转自:http://www.wowotech.net/kernel_synchronization/spinlock.html一、前言在linux kernel的实现中,经常会遇到这样的场景:共享数据被中断上下文和进程上下文访问,该如何保护呢?如果只有进程上下文的访问,那么可以考虑使用semaphore或者mutex的锁机制,但是现在中断上下文也参和进来,那些可以导致睡眠的lock就不能使...转载 2018-11-22 22:17:42 · 276 阅读 · 0 评论