随笔分类 -  Linux

摘要:进程是系统进行资源分配和调度的基本单位,包括代码、数据和PCB进程控制块等资源。 fork函数通过系统调用创建一个与原进程相同的子进程。 在调用进程(父进程)中返回一次,返回子进程ID;在子进程返回0。 父进程调用fork之前打开的所有描述符在fork返回之后由子进程分享。 网络服务器父进程调用ac 阅读全文
posted @ 2016-04-20 12:41 LarryKnight 阅读(172) 评论(0) 推荐(0)
摘要:TCP(Transmission Control Protocol 传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层通信协议。 在因特网协议族中,TCP层是位于IP层之上,应用层之下的中间层。 不同主机的应用层之间经常需要可靠的、像管道一样的连接,但是IP层不提供这样的流机制,而是提供不可 阅读全文
posted @ 2016-04-17 20:48 LarryKnight 阅读(167) 评论(0) 推荐(0)
摘要:Linux下: #include <unistd.h> sleep(1); // 睡眠1秒 usleep(1); // 睡眠1微妙 阅读全文
posted @ 2016-04-01 20:46 LarryKnight 阅读(162) 评论(0) 推荐(0)
摘要:传递多组参数: 阅读全文
posted @ 2016-03-30 21:11 LarryKnight 阅读(852) 评论(0) 推荐(0)
摘要:Segmentation fault (core dumped) 一般由内存操作不当造成: 1. 数组超出范围 2. 访问时越界或指向了系统空间 3. 修改了只读内存 解决方法: 1. gdb调试 2. 递归函数中尽量不要申请较大的内存 3. 动态申请内存;养成释放内存的习惯 阅读全文
posted @ 2016-03-21 15:34 LarryKnight 阅读(368) 评论(0) 推荐(0)
摘要:vim替换 :1,100s/from/to/g 替换1-100行的内容 :%s/from/to/g 替换所有行的内容 阅读全文
posted @ 2016-03-19 23:17 LarryKnight 阅读(122) 评论(0) 推荐(0)
摘要:用gcc编译 c++ 程序时,出现错误 undefined reference to __cxa_guard_acquire linker error, 但是用icc可以正常编译, 问题出在static 上。从网上搜到的解决办法是加库的链接: To resolve this undefined re 阅读全文
posted @ 2016-03-17 02:59 LarryKnight 阅读(2741) 评论(0) 推荐(0)
摘要:一、 三种类型的套接字:1.流式套接字(SOCKET_STREAM) 提供面向连接的可靠的数据传输服务。数据被看作是字节流,无长度限制。例如FTP协议就采用这种。2.数据报式套接字(SOCKET_DGRAM) 提供无连接的数据传输服务,不保证可靠性。3.原始式套接字(SOCKET_RAW) 该接口允 阅读全文
posted @ 2016-02-26 22:57 LarryKnight 阅读(6305) 评论(0) 推荐(2)
摘要:整体规划:问题的定义:工具或程序需要实现什么或者能做出哪些事情;软件架构设计:设计一些功能模块,使每个模块各司其职,功能独立、健全;软件详细设计:具体设计每个模块的输入参数、输出数据和返回值,以及怎样实现其功能;软件的构建:编码软件的优化:完善各功能模块的代码效率、编码规范、参数检查、异常检测、错误... 阅读全文
posted @ 2015-11-28 11:03 LarryKnight 阅读(375) 评论(0) 推荐(0)
摘要:在函数中动态申请内存(虚拟内存,堆),利用指针返回值指向申请的内存。 阅读全文
posted @ 2015-11-28 10:57 LarryKnight 阅读(211) 评论(0) 推荐(0)
摘要:标准IO提供缓冲的目的是尽可能减少使用read和write调用的次数。标准IO的几种缓冲分为:全缓冲 :在填满标准IO缓冲区后才进行实际IO操作。对于驻留在磁盘上的文件通常是由标准IO库实施全缓冲的。行缓冲 :在这种情况下,当在输入和输出中遇到换行符时,标准I/O库执行IO操作。这允许我们一次输入一... 阅读全文
posted @ 2015-11-19 10:17 LarryKnight 阅读(243) 评论(0) 推荐(0)
摘要:Linux顶层目录结构:/ 根目录├── bin 存放用户二进制文件├── boot 存放内核引导配置文件├── dev 存放设备文件├── etc 存放系统配置文件├── home 用户主目录├── lib 动态共享库├── lost+found 文件系统恢复时的恢复文件├── media 可卸... 阅读全文
posted @ 2015-11-06 10:31 LarryKnight 阅读(194) 评论(0) 推荐(0)
摘要:中断interrupt被定义为一个事件,该事件改变处理器执行的指令顺序。中断分为同步中断(异常exception)和异步中断(中断interrupt):同步中断是当指令执行时由CPU控制单元产生的,只有在一条指令终止执行后CPU才会发出中断。异步中断是由其他硬件设备依照CPU时钟信号随机产生的。中断... 阅读全文
posted @ 2015-11-05 20:51 LarryKnight 阅读(284) 评论(0) 推荐(0)
摘要:类型 32位 64位 char 1 1 short 2 2 int 4 4 long 4 8 指针 4 8 float 4 4 double 8 8 long 8 8 常用的基本类型数据 阅读全文
posted @ 2015-11-02 23:00 LarryKnight 阅读(220) 评论(0) 推荐(0)
摘要:clone()、fork()、vfork()都是Linux的系统调用。进程一般由代码段、数据段和PCB进程控制块组成。fork 创造的子进程复制了父亲进程的资源,包括内存的内容task_struct内容,新旧进程使用同一代码段,复制数据段和堆栈段,这里的复制采用了注明的copy_on_write技术... 阅读全文
posted @ 2015-11-02 22:04 LarryKnight 阅读(3362) 评论(0) 推荐(0)
摘要:搜索: which 查看可执行文件的位置 whereis 查看文件位置 locate 配合数据库看文件位置 find 实际搜索硬盘查询文件名称 文件操作: mkdir 创建目录 rmdir 删除目录 cd 改变目录 pwd 当前目录 rm 删除文件 touch 创建文件(存在则更新修改日期) cp 阅读全文
posted @ 2015-11-02 16:55 LarryKnight 阅读(133) 评论(0) 推荐(0)
摘要:操作系统中的状态分为管态(核心态)和目态(用户态)。 系统调用(System call):是可直接进入内核的入口点。由操作系统实现提供的所有系统调用所构成的集合即程序接口或应用编程接口(Application Programming Interface,API)。是应用程序和系统之间的接口。 库函数 阅读全文
posted @ 2015-11-01 23:21 LarryKnight 阅读(314) 评论(0) 推荐(0)
摘要:程序是存在磁盘上的可执行文件;进程是程序的执行实例,是资源(CPU时间、内存等)分配和拥有的实体。进程ID:进程的唯一数字标识符,用pid_t定义,用getpid()得到,需要头文件unistd.h。PID最大32767。进程描述符process descriptor:都是task_struct类型... 阅读全文
posted @ 2015-11-01 15:07 LarryKnight 阅读(193) 评论(0) 推荐(0)
摘要:1-5实例 控制字符:ctrl + 另一个键。control + D或者^D是默认的文件结束符(EOF字符)。 阅读全文
posted @ 2015-10-31 22:06 LarryKnight 阅读(206) 评论(0) 推荐(0)
摘要:char *fgets(char *buf, int bufsize, FILE *stream); 从文件结构体指针stream中读取数据,每次读取一行。读取的数据保存在buf指向的字符数组中,每次最多读取bufsize-1个字符(第bufsize个字符赋'\0'),如果文件中的该行,不足bufs 阅读全文
posted @ 2015-10-31 21:24 LarryKnight 阅读(231) 评论(0) 推荐(0)