![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Linux系统编程
文章平均质量分 64
时间文盲
不期而遇,简单一点。
展开
-
Linux内核设计艺术笔记(二)
从开机加电到执行main函数期间,实现了内核程序到计算机内存的加载,从实模式到保护模式的转变,并且重建了中断服务机制,内存分页机制等前期工作,然后,才顺理成章的调用main函数。此时,系统仍处于关中断模式。二、设备环境初始化及激活进程0原创 2013-10-04 11:12:03 · 1036 阅读 · 0 评论 -
链接、装载与库:MiniCRT移植
简介 《程序员的自我修养》最后一章中有个小型C运行库(MiniCRT)的实现,于是想着至少要亲自手动再实现一遍。在实现的整个过程中碰到了一些编译执行的问题,这里做下记录总结。其中,《MiniCRT 64位 Linux系统移植记录》(下文简称《记录》)这篇博文为我提供了很大的帮助,在此表示感谢。原创 2015-05-23 18:30:08 · 1679 阅读 · 0 评论 -
NCURSES库若干问题研究
最近几天继续手头自己的xcon终端程序,遇到了输入方向键及退格删除键时的若干问题。在解决处理这些问题的过程中,逐步接触到了NCURSES库,所以记录下。原创 2017-08-27 11:44:38 · 335 阅读 · 0 评论 -
Linux驱动笔记:I2C核心、总线与设备驱动
欠债+1原创 2017-05-31 23:22:40 · 310 阅读 · 0 评论 -
ARM架构栈帧回溯实践
欠债+1原创 2017-04-27 22:29:47 · 1748 阅读 · 0 评论 -
fork子进程与子线程在共享内存中的区别
前言这两周做了很多关于共享内存,fork子进程与线程的工作,收获很大。先记录个小问题,关于主线程中fork子进程与子线程在共享内存中更新数据的问题。这些知识在书中是都能够了解到的,但如果没有亲身遭遇或者实践过,绝对不会有深切的感受。正文简单来说,有两个进程A与B,A与B通过共享内存方式实现进程间数据交换。 同时,进程A通过消息队列实时监听的进程B数据更新通知,然后进行对共享内存中的数据原创 2013-12-22 14:47:51 · 3977 阅读 · 0 评论 -
coredump简介与coredump原因总结
前言这周多在用gdb调试,转个对于调试segmentation fault比较实用的方法。当时,也是老话重谈。就当复习了。原本每天晚上学点Nginx,结果这块一直拖着,晚上回去尽关注通信人了。内容什么是coredump通常情况下coredmp包含了程序运行时的内存,寄存器状态,堆栈指针,内存管理信息等。可以理解为把程序工作的当前状态存储成一个文件。许多程序和操作系统出错转载 2013-12-30 13:32:31 · 1180 阅读 · 0 评论 -
ubuntu下终端提示符设置
今天突然发现这个终端提示符太长的问题,比如下图示例,实在是不能忍。。原创 2014-05-18 13:17:45 · 2229 阅读 · 0 评论 -
Linux内核设计艺术笔记(四)
前面复习到进程1的创建、调度以及执行,但系统启动工作还没有结束,未实现怠速状态(怠速意味着操作系统已经完成了所有的准备工作,随时可以响应用户的激励),所以,接着会由进程1创建进程2,然后由进程2的执行,最终加载和重建shell程序,创建update进程,从而实现怠速。原创 2013-10-05 13:46:10 · 1252 阅读 · 2 评论 -
Linux内核设计艺术笔记(三)
从前面设备环境的初始化以及进程0的激活,计算机中已经存在一个3特权级的进程,它的第一项工作就是作为父进程调用fork函数创建第一个子进程----进程1。之后的所有进程都是基于父子进程创建机制由父进程创建出来。原创 2013-10-04 20:03:18 · 983 阅读 · 0 评论 -
Linux中IPC机制:管道和FIFO
前言这一周来过的很浮躁,感觉什么也没干,时间就这么过去了。实习工作需要看协议,看的头昏脑胀,晚上还得写论文。Nginx基本没时间碰,略吐槽下。。工作时间也趁着看别人修改的协议代码机会,顺便复习下代码中用到的管道机制,简单记录下。另外,顺利入手第一台单反,我大尼康D7000~管道管道是最早类型的IPC形式了,所有Unix类系统都提供管道机制。它由pipe函数提供单路(单向)数据流原创 2014-03-02 18:08:08 · 1405 阅读 · 0 评论 -
Linux共享内存常见问题分析
前言这个是接上篇,本来是记录在一篇草稿上的,但是,内容根本不相关,排版怎么都觉得不好看,也不方便以后查阅。干脆再起一篇。System V 共享内存问题shmget创建共享内存问题shmget函数用来创建一个新的,或者访问一个已存在的共享内存区。#include #include int shmget(key_t key, size_t size, int原创 2014-02-22 22:19:15 · 2900 阅读 · 0 评论 -
Linux中IPC机制:共享内存区
前言这一周搞两进程之间的数据传递,主要用到的方法就是共享内存,可以说,对共享内存这一IPC方法是有了更加透彻的理解和掌握。记录下,相关内容:Linux中IPC有几种实现版本,例如共享内存就有Posix共享内存与System V共享内存,它们的联系与区别?答:Linux中的进程间通信机制源自于Unix平台上的进程通信机制。Unix的两大分支AT&T Unix和BSD Unix在进原创 2013-12-24 14:28:46 · 1069 阅读 · 0 评论 -
UNIX高手的10个习惯
前言偶然见到的,蛮不错,转了。引言当您经常使用某个系统时,往往会陷入某种固定的使用模式。有时,您没有养成以尽可能最好的方式做事的习惯。有时,您的不良习惯甚至会导致出现混乱。纠正此类缺点的最佳方法之一,就是有意识地采用抵制这些坏习惯的好习惯。本文提出了 10 个值得采用的 UNIX 命令行习惯——帮助您克服许多常见使用怪癖,并在该过程中提高命令行工作效率的好习惯。下面列出了这转载 2014-01-15 23:26:19 · 1252 阅读 · 0 评论 -
Makefile/Makefile.am/Makefile.in三者关系
Makefile Makefile.am Makefile.in自动生成 Makefile 的全过程详解! automake/autoconf 入门automake/autoconf 入门作为Linux 下的程序开发人员,大家一定都遇到过Makefile ,用make 命令来编译自己写的程序确实是很方便。一般情况下,大家都是手工写一个简单Makefile ,如果要想写出转载 2013-12-23 15:51:59 · 13142 阅读 · 3 评论 -
Linux中的锁机制
今天面试被虐成翔了,还好面试官和气,能够顺利进入二面。先是所做项目部分的数据结构设计解释的不清不楚,然后关于内核的部分,原本自以为知识点都掌握的差不多,真到临场才发现,看书理解是一回事,要给别人讲清楚那又是另外一回事。没办法,多么痛的领悟必须转为多么重的动力。从锁机制开始,这个东西真的很高深,今天果断就被面试官灭了一回。书上的锁知识都是基本,实践做项目才能发现问题以及解决办法,我还没到这个境界,但原创 2013-10-08 22:43:04 · 1806 阅读 · 0 评论 -
Linux内核设计艺术笔记(一)
国庆长假,纯宅宿舍了。所谓浪费光阴可耻,而且LZ又正处于找工作的阶段,虽然对自己所学已有几分把握,不过,LZ尚无offer在手,实在拿不出天下我有的勇气。所以,还是老老实实的啃书本,把知识复习复习,整理整理。一方面温故知新,另一方面可准备面试工作,一举两得。从《Linux内核设计的艺术》这本书开始吧。六月底开始入手这本书,花了一个月细读,对内核基本上有了个十分感性的认识,比起之前看的各种枯燥的原创 2013-10-03 15:39:17 · 1347 阅读 · 0 评论 -
解决VMware安装Ubuntu黑屏问题
现象问题:VMware安装Ubuntu成功,输入密码成功登录后黑屏。(网上搜索,各种答案都不靠谱,所以这里再给出一种亲身解决方法!)原创 2014-11-04 22:44:58 · 13091 阅读 · 5 评论