Linux
文章平均质量分 85
Sheena爽
这个作者很懒,什么都没留下…
展开
-
Linux之高级IO
文章目录一、五种典型IO模型1.阻塞/非阻塞IO/信号驱动IO/异步IO典型的四种IO模型2.阻塞/非阻塞、同步/异步3.多路转接IO(即多路复用)二、多路转接的三种实现模型1.select模型2.poll模型3.epoll模型一、五种典型IO模型种类:阻塞IO、非阻塞IO、信号驱动IO、异步IO、多路转接IO。1.阻塞/非阻塞IO/信号驱动IO/异步IO典型的四种IO模型IO过程:发起IO调用,等待IO条件就绪,然后将数据拷贝到缓冲区中进行处理。阻塞IO:为了完成IO,发起调用,若当前不原创 2020-06-12 16:05:04 · 372 阅读 · 0 评论 -
Linux之网络基础之TCP/IP五层参考模型
TCP/IP五层参考模型:应用层、传输层、网络层、数据链路层。文章目录一、应用层1.自定制协议2.知名协议3.给服务端发送请求4.http协议5.编写一个简单的HTTP服务器:6.http和https二、传输层1.UDP协议2.TCP协议3.面向连接(TCP)4.面向字节流(TCP)三、网络层四、数据链路层一、应用层应用层是负责应用程序之间的数据沟通(应用层的协议是程序员自己定义的。)1.自定制协议网络版计算器:客户端将两个数字和一个运算符传输给服务端,然后服务端进行计算,返回给客户端.原创 2020-06-11 21:18:48 · 804 阅读 · 0 评论 -
Linux之网络基础之套接字编程
通信中两端主机:客户端和服务端。服务端:被动接受请求的一端。客户端:主动发送请求的一端。永远都是客户端主机现象服务端发送请求。传输层有两个协议:tcp、udp文章目录一、socket套接字编程1.socket接口的介绍2.字节序转换接口二、UDP网络编程流程的实现1.UDP网络通信程序编程流程:2.udpsocket类实现套接字编程3.udp服务端程序4.udp客户端程序三、TCP网络编程流程的实现1.TCP网络通信程序编程流程2.接口介绍3.tcpsocket类实现套接字编程4.tcp服务端程.原创 2020-06-08 13:40:17 · 435 阅读 · 0 评论 -
Linux之网络基础
文章目录一、网络基础1.网络的分类二、网络中的地址管理1.IP地址2.MAC地址三、网络协议1.协议分层2.网络通信传输中数据的封装与分用四、网络字节序一、网络基础路由器的产生伴随着局域网的产生。1.网络的分类以覆盖范围进行划分:局域网(LAN,计算机数量多,把分布在数公里范围内不同物理位置的计算机设备通过交换机和路由器连接在一起。) 、城域网(MAN,一个城市范围内所建立的计算机通信网。)、广域网(WAN,将远隔千里的计算机都连在一起。)国内的:互联网。 全球的:因特网。局域网的分类:以原创 2020-06-06 17:08:07 · 328 阅读 · 0 评论 -
Linux之多线程
文章目录一、线程概念1.多进程与多线程进行多任务处理的优缺点分析2.多进程与多线程进行多任务处理的优势在哪?3.多线程与多进程二、线程控制1.线程创建2.线程终止3.线程等待4.线程分离三、线程安全1.线程安全的概念和实现2.互斥的实现(互斥锁)3.同步的实现(条件变量)4.生产者与消费者模型5.信号量(POSIX)6.读者写者模型-----读写锁7.线程池8.线程安全的单例模式一、线程概念在传统操作系统中,pcb就是进程,线程有个tcp。但在Linux下,因为线程是通过进程pcb描述实现的,因为L原创 2020-06-05 16:21:03 · 477 阅读 · 0 评论 -
Linux之系统编程之进程信号
文章目录一、信号1.信号是什么2.信号的生命周期3.信号的种类4.信号的产生5.信号在进程中注册6.信号在进程中注销(修改未决信号集合)7.信号的处理(信号的递达)8.自定义处理方式的信号捕捉流程8.信号阻塞(生命周期之外的动作)二、竞态条件1.函数的可重入和不可重入2.SIGCHLD信号(非可靠信号,位图中只标记了一次)一、信号1.信号是什么信号是一个软件中断,通知进程发生了某个事件,中断当前进程正在执行操作,去处理这个事件。信号就是代表着事件。信号有多种,各自表示不同的事件。2.信号的生原创 2020-06-04 16:20:36 · 372 阅读 · 0 评论 -
Linux之系统编程之进程通信
进程通信:操作系统为用户提供的几种进程间通信方式(管道、共享内存、消息队列、信号量)为什么操作系统要提供进程间通信方式给用户?-----因为进程之间具有独立性(每个进程只能访问自己的虚拟地址,无法直接沟通,因此操作系统要提供公共媒介)。通信场景:数据传输/数据共享/进程控制。system V标准的共享内存,消息队列,信息量只适用于uinux。posix标准的共享内存,消息队列,信号量可跨平台。进程间通信目的:①数据传输:一个进程需要将它的数据发送给另一个进程。②资源共享:多个进程之间共享相同.原创 2020-06-04 14:55:29 · 248 阅读 · 0 评论 -
Linux之系统编程之基础IO
文章目录一、标准库IO1.回顾函数2.注意事项二、系统调用接口三、文件描述符四、重定向五、文件系统的基本认识1.磁盘与文件2.软链接/硬链接一、标准库IO1.回顾函数①fopen(char* filename, char* mode);r 只读r+ 可读可写w 只写w+ 可读可写a 追加只写a+ 追加可读可写②fread(char* buf, size_t bsize, size_t nnum, FILE* fp);③fwrite(char* dat原创 2020-06-03 16:41:52 · 327 阅读 · 0 评论 -
Linux之系统编程之初识进程
文章目录一、进程概念1.什么是进程2.如何查看进程3.进程状态3.僵尸进程4.特殊进程5.进程的优先级6.环境变量7.程序地址空间(进程的虚拟地址空间).8.内存管理二、进程控制1.进程创建2.进程终止3.进程等待4.程序替换一、进程概念1.什么是进程进程就是指运行中的程序。在操作系统来看,进程是对一个运行中程序的描述(PCB),Linux下,这个pcb实际是一个结构体struct task_struct{,};。(站在操作系统角度,进程就是pcb)任务管理器中的后台进程叫批处理进程,有的操作系统原创 2020-06-03 14:46:52 · 343 阅读 · 0 评论 -
Linux之对权限的理解
一、权限的概念1.用户对操作系统的操作上权限分类用户对操作系统的操作上权限分类:超级用户(管理员用户)root和普通用户。超级用户(管理员用户)(root):可以在Linux系统下做任何事情,不受限制。普通用户:在Linux系统下做有限的事情。sudo ls/root :临时对当前用户进行ls命令赋予root权限。设置sudo功能 :./etc/sudoers。去修改。2.用户能...原创 2019-12-07 15:19:29 · 612 阅读 · 0 评论 -
Linux之基本指令
命令使用的构成: 命令名称 [操作选项] [操作对象]man 操作名称:查看该操作的手册。一、基本指令1.目录相关操作的命令什么是目录:目录就是文件夹。登陆成功之后,用户默认处于用户家目录。(1) ls :浏览当前所在目录的目录内容语法:ls [选项][目录或者文件]① -a : 显示指定目录下的隐藏文件(Linux下隐藏文件是因“ . ”开头的文件)。② -l :显...原创 2019-12-06 18:14:40 · 261 阅读 · 0 评论