qiuri2008

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

随笔分类 -  linux 编程

上一页 1 2 3 4 下一页

内核及编程总结
摘要:引言 本文是对程序员的自我修养:链接、装载与库中第3章的实践总结(和结构相关的示意图都是用Gliffy Diagrams画的🤓),通过使用工具readelf、objdump对目标文件进行解析,学习目标文件的结构。 1. 目标文件 1.1 目标文件的定义 编译器编译源代码后生成的文件叫做目标文件。在 阅读全文
posted @ 2018-05-27 13:16 江召伟 阅读(1011) 评论(0) 推荐(0)

摘要:一.在学习之前我们先看看ELF文件。 ELF分为三种类型: 1. .o 可重定位文件(relocalble file) 2. 可执行文件 3. 共享库(shared library) 三种格式基本上从结构上是一样的,只是具体到每一个结构不同。下面我们就从整体上看看这3种格式从文件内容上存储的方式,s 阅读全文
posted @ 2018-05-26 22:10 江召伟 阅读(1334) 评论(0) 推荐(0)

摘要:在ELF格式的可执行文件中,全局内存包括三种:bss、data和rodata。其它可执行文件格式与之类似。了解了这三种数据的特点,我们才能充分发挥它们的长处,达到速度与空间的最优化。 1、bss(Block Started by Symbol) bss是指那些没有初始化的和初始化为0的全局变量和静态 阅读全文
posted @ 2018-05-26 21:50 江召伟 阅读(449) 评论(0) 推荐(0)

摘要:循环冗余校验检错方案 上节介绍的奇偶校验码(PCC)只能校验一位错误,本节所要介绍的循环冗余校验码(CRC)的检错能力更强,可以检出多位错误。 1. CRC校验原理 CRC校验原理看起来比较复杂,好难懂,因为大多数书上基本上是以二进制的多项式形式来说明的。其实很简单的问题,其根本思想就是先在要发送的 阅读全文
posted @ 2018-05-15 15:44 江召伟 阅读(2360) 评论(0) 推荐(0)

摘要:一、可重入函数1)什么是可重入性?可重入(reentrant)函数可以由多于一个任务并发使用,而不必担心数据错误。相反, 不可重入(non-reentrant)函数不能由超过一个任务所共享,除非能确保函数的互斥(或者使用信号量,或者在代码的关键部分禁用中断)。可重入函数可以在任意时刻被中断,稍后再继 阅读全文
posted @ 2018-05-11 20:50 江召伟 阅读(593) 评论(0) 推荐(0)

摘要:时常会遇到段错误(segfault),调试非常费劲,除了单元测试和基本测试外,有些时候是在在线环境下,没有基本开发和测试工具,这就需要调试的技能。以前介绍过使用strace进行系统调试和追踪《linux动态追踪神器——Strace实例介绍》。今天给大家介绍下利用core du 阅读全文
posted @ 2018-05-03 19:24 江召伟 阅读(2212) 评论(0) 推荐(0)

摘要:前言 本章节是用基本的Linux/Unix基本函数加上select调用编写一个完整的服务器和客户端例子,可在Linux(ubuntu)和Unix(freebsd)上运行,客户端和服务端的功能如下: 客户端从标准输入读入一行,发送到服务端 服务端从网络读取一行,然后输出到客户端 客户端收到服务端的响应 阅读全文
posted @ 2018-04-29 22:34 江召伟 阅读(333) 评论(0) 推荐(0)

摘要:首先需要了解的是select函数: select函数 #include<sys/select.h> #include<sys/time.h> int select (int maxfd , fd_set *readset ,fd_set *writeset, fd_set *exceptionset 阅读全文
posted @ 2018-04-29 22:33 江召伟 阅读(238) 评论(0) 推荐(0)

摘要:poll函数 在上文unix下网络编程之I/O复用(二)中已经介绍了select函数的相关使用,本文将介绍另一个常用的I/O复用函数poll。poll提供的功能与select类似,不过在处理流设备时,它能够提供额外的信息。 poll函数原型: 1 2 3 #include<poll.h> int p 阅读全文
posted @ 2018-04-29 22:30 江召伟 阅读(262) 评论(0) 推荐(0)

摘要:select函数 该函数允许进程指示内核等待多个事件中的任何一个发生,并仅在有一个或是多个事件发生或经历一段指定的时间后才唤醒它。我们调用select告知内核对哪些描述字(就读、写或异常条件)感兴趣以及等待多长时间。我们感兴趣的描述字不局限于套接口,任何描述字都可以使用select来测试。 sele 阅读全文
posted @ 2018-04-29 22:25 江召伟 阅读(268) 评论(0) 推荐(0)

摘要:什么是I/O复用? What we need is the capability to tell the kernel that we want to be notified if one or more I/O conditions are ready (i.e., input is ready 阅读全文
posted @ 2018-04-29 22:19 江召伟 阅读(345) 评论(0) 推荐(0)

摘要:EOF 是 End Of File 的缩写。在 C 语言中,它是在标准库中定义的一个宏。人们经常误认为 EOF 是从文件中读取的一个字符(牢记)。其实,EOF 不是一个字符,它被定义为是 int 类型的一个负数(比如 -1)。EOF 也不是文件中实际存在的内容。EOF 也不是只表示读文件到了结尾这一 阅读全文
posted @ 2018-04-29 16:37 江召伟 阅读(2800) 评论(0) 推荐(2)

只有注册用户登录后才能阅读该文。
posted @ 2018-04-22 14:39 江召伟 阅读(5) 评论(0) 推荐(0)

摘要:我们知道权限有r,w,x。其实除了这三个,还有特殊权限。比如: [root@localhost ~]# ls -l /usr/bin/passwd -rwsr-xr-x 1 root root 22960 Jul 17 2006 /usr/bin/passwd 可以发现权限位,有个s。特殊权限有如下 阅读全文
posted @ 2018-01-31 13:21 江召伟 阅读(224) 评论(0) 推荐(0)

摘要:以下是rsync系列篇: 1.1 说在前面的话 rsync官方网站: https://www.samba.org/ftp/rsync/rsync.html rsync是可以实现增量备份的工具。配合任务计划,rsync能实现定时或间隔同步,配合inotify或sersync,可以实现触发式的实时同步。 阅读全文
posted @ 2018-01-03 20:38 江召伟 阅读(608) 评论(0) 推荐(0)

摘要:在linux中存储结构如下: Linux系统中的文件存储结构 那么在linux中每个目录都是什么含义呢 在linux中相对路径和绝对路径是必须要了解的一个概念 绝对路径(absolute path):首先坐飞机来到中国,到了北京出首都机场坐机场快轨到三元桥,然后换乘10号线到潘家园站,出站后坐34路 阅读全文
posted @ 2018-01-02 19:10 江召伟 阅读(2659) 评论(0) 推荐(0)

摘要:一、指针说明 二、指针的初始化(赋地址) 3.指针与数组、函数的关系 四、指针的分类 五、指针的转换 六、指针的使用 其实在学习C语言指针本身并不复杂,但是全部混在一起就很容易弄混。这也是指针的难点所在,但是你如果可以灵活的运用指针的话你也可以写出一手很不错的代码。 阅读全文
posted @ 2017-12-31 23:19 江召伟 阅读(718) 评论(0) 推荐(0)

摘要:系统级别: 下面这些工具利用内核的计数器在系统软硬件的环境中检查系统级别的活动。 vmstat: 虚拟内存和物理内存的统计,系统级别。 mpstat: 每个CPU 的 使用情况。 iostat: 每个磁盘I/O 使用情况,由块设备接口报告。 netstat: 网络按口的统计,TCP/IP栈的统计,以 阅读全文
posted @ 2017-11-27 19:05 江召伟 阅读(442) 评论(0) 推荐(0)

摘要:在Linux下面,创建进程是一件十分有意思的事情。我们都知道,进程是操作系统下面享有资源的基本单位。那么,在linux下面应该怎么创建进程呢?其实非常简单,一个fork函数就可以搞定了。但是,我们需要清楚的是子进程与父进程之间除了代码是共享的之外,堆栈数据和全局数据均是独立的,主要是学习标准的H文件 阅读全文
posted @ 2017-08-16 11:18 江召伟 阅读(389) 评论(0) 推荐(0)

摘要:定时器是我们需要经常处理的一种资源。那Linux下面的定时器又是怎么一回事呢?其实,在linux里面有一种进程中信息传递的方法,那就是信号。这里的定时器就相当于系统每隔一段时间给进程发一个定时信号,我们所要做的就是定义一个信号处理函数。 [cpp] view plain copy #include  阅读全文
posted @ 2017-08-16 11:16 江召伟 阅读(2048) 评论(0) 推荐(0)

上一页 1 2 3 4 下一页