Linux
木头i
这个作者很懒,什么都没留下…
展开
-
Linux — 基础知识
环境:Linux系统目录结构——树状结构树状结构以下是对目录的解释/bindevhomebootetcliblost+foundmediamntoptprocrootsbinselinuxsrvsys原创 2019-04-12 19:05:07 · 98 阅读 · 0 评论 -
Linux — 网络基础三
网络层负责地址管理和路由选择通过对地址的管理,能够保证数据从一台主机发送到另一台主机,并且选择合适的路径进行传输。IP协议主机: 两端的PC路由器: 实现中间数据转发的设备节点: 网络中的每个设备都是一个节点IP地址: 网络中唯一标识一台主机地址管理: 因为现在大量的私网建立(通过DHCP/NAT技术实现全民上网),在复杂的网络中实现通信就要进行良好的地址管理,因此只有良好的地址管...原创 2019-07-13 10:14:38 · 313 阅读 · 0 评论 -
Linux — 网络基础二
应用层负责应用程序之间的数据沟通网络通信协议: 网络数据传输中的数据格式规定自定义协议序列化: 将数据对象按照持久化存储或者网络数据传输的格式来排布。反序列化: 对持久化存储或者传输的数据以指定的协议进行解析的过程。知名协议HTTP ——超文本传输协议URL —— 统一资源定位符(网址)URL编码因为URL中特殊字符都具有特殊含义,因此查询字符串中有特殊字符时,会造成二义性,...原创 2019-07-12 20:03:25 · 109 阅读 · 0 评论 -
Linux — 网络套接字编程
网络套接字编程,主要是针对于传输层,因为传输层有两个协议tcp/udp,因此我们必须选择其一进行数据传输,选哪个那,这种时候我们必须就要明了两个协议的优缺点,视使用场景而定。TCP协议优点: 可靠传输,并且传输灵活缺点: 传输速度低,数据粘包UDP协议优点: 传输速度快、无粘包缺点: 不可靠针对数据安全要求高的场景(文件传输)使用TCP保证数据的可靠。针对数据安全性要求不是很高,但...原创 2019-06-24 19:02:56 · 321 阅读 · 0 评论 -
Linux — 网络基础一
协议网络中主机之间进行通信必须使用相同的协议,协议可理解为“规则”,是数据传输和数据的解释的规则。协议就是一个相互能够识别的约定,在网络中因为主机设备的生产厂商很多,每个厂商如果都使用自己的协议进行通信,那么导致网络上主机间无法正常通信,这个时候需要某些大型组织来设计一个标准的协议,然后各个厂商都使用这个协议进行通信,这个时候就能实现网络全覆盖通信。网络间的数据传输就必须使用同一个标准协议—...原创 2019-06-21 10:13:58 · 104 阅读 · 0 评论 -
Linux — 进程控制
进程创建进程终止进程等待进程替换模拟实现minishell原创 2019-04-19 16:30:29 · 732 阅读 · 0 评论 -
Linux — 多线程
线程概念Linux下没有真正的线程,因为Linux下的线程是用进程pcb模拟的(也就是说Linux下pcb实际上是一个线程),所以Linux下的线程也被叫做轻量级进程。既然Linux下pcb成了线程,那么进程变成了线程组。线程是进程的一条执行流,Linux下线程是以进程的pcb模拟的,所以才说Linux下的线程是轻量级进程,因此Linux下的线程是cpu调度的基本单位。Linux下的进程成...原创 2019-04-27 16:40:04 · 273 阅读 · 0 评论 -
Linux — 进程间通信
进程间的通信方式管道管道符 | 连接两个命令,将前面命令的结果交给后面的命令处理重定向 修改数据流向> 标准输出(终端显示器)重定向 清除原有内容,将新内容写入>> 标准输出(终端显示器)重定向 向原有内容最后追加内容原理: 操作系统在内核中提供一块缓冲区(只要进程能够访问到这块缓冲区就可以实现)管道创建成功后,会...原创 2019-04-23 08:17:35 · 153 阅读 · 0 评论 -
Linux — 基础IO
标准C IOfopen(); //打开文件FILE *fopen( const char *filename, const char *mode );fclose(); //关闭文件int fclose(FILE *stream)fseek(); //将文件指针移动到指定位置。int fseek( FILE *stream, long offset, int or...原创 2019-04-22 21:22:51 · 156 阅读 · 0 评论 -
Linux — 进程概念
进程基本概念进程状态进程优先级环境变量进程地址空间进程调度队列原创 2019-04-17 21:14:30 · 118 阅读 · 0 评论 -
Linux — 进程信号
信号更多的是通知事件的发生,信号产生之后第一时间也不是直接处理,而是先存储下来,处理信号时会打断当前进程正在执行的工作,然后去准备处理事件,事件处理完毕之后进程会回到原先运行的位置继续运行。Linux下有62种信号,可以使用 kill -l 查看分类1-31不可靠信号(非实时信号)34-64可靠信号(实时信号)注:在书写程序时,建议书写信号宏名,便于跨平台信号的生命周期: 信...原创 2019-04-26 19:09:37 · 144 阅读 · 0 评论 -
Linux — 环境开发工具的使用
vim——文本编辑工具gcc——编译工具Makefilegdb——程序调试工具yum 软件包管理工具原创 2019-04-13 17:49:04 · 126 阅读 · 0 评论 -
Linux — 高级IO
IO分两步等待数据拷贝五种IO模型阻塞IO在内核将数据准备好之前,系统调用会一直等待。 所有的套接字,默认都是阻塞方式。非阻塞IO如果内核还未将数据准备好,系统调用会直接返回, 并且返回EWOULDBLOCK错误码。非阻塞IO往往需要程序员循环的方式反复尝试读写文件描述符,这个过程称为轮询。 这对CPU来说是较大的浪费,一 般只有特定场景下才使用。信号驱动IO内核将数据准...原创 2019-07-16 09:36:11 · 192 阅读 · 0 评论