Linux
文章平均质量分 86
算法真不会
这个作者很懒,什么都没留下…
展开
-
Kafka的基本原理
kafka学习原创 2023-02-03 16:23:06 · 1231 阅读 · 0 评论 -
典型I/O模型——阻塞IO,非阻塞IO,信号驱动IO,异步IO,IO多路转接(select&poll&epoll)
典型IO模型总结1.典型IO模型1.1 什么是IO模型1.2 阻塞IO模型1.3 非阻塞IO模型1.4 信号驱动IO模型1.5 异步IO模型1.6 多路转接IO模型1.6.1 select1.6.2 poll1.6.3 epoll1.6.3.1 工作方式:水平触发 LT模式1.6.3.2 工作方式:边缘触发 ET模式1.典型IO模型1.1 什么是IO模型我们在执行一个程序时,这个程序要求外设进行输入或者输出,内核在处理这个数据时,都在做什么?第一步:等待IO就绪,已经准备好需要的资源了,可以原创 2021-06-19 00:05:26 · 403 阅读 · 4 评论 -
Linux——实现一个简单的网络版计算器
网络版计算器1.程序简介2.思路3.代码实现4.运行结果1.程序简介我们想要实现一个服务器版的简易计算器,我们需要从客户端发送两个数据以及所要操作的类型,然后由服务器进行处理,并将结果返回至客户端2.思路这种运算的规则,我们也可以认为是一种协议,因为是客户端与服务端达成的某种约定我们需要定义两个结构体去表示客户端与服务端之间进行交互的信息发送数据时将这个结构体按照一个规则转换成字符串,接收数据的时候再按照相同的规则把字符串转化为结构体这个过程就叫做序列化和反序列化3.代码实现Ma原创 2021-05-25 10:39:23 · 1195 阅读 · 9 评论 -
Linux——网络编程套接字
TCP/IP基础模型1.计算机网络体系结构1.1为什么要分层?1.2正确认识分层结构1.3 OSI七层模型与TCP/IP五层(四层)模型2.TCP/IP模型结构解析2.1应用层2.2传输层2.3网络层2.4数据链路层2.5物理层1.计算机网络体系结构1.1为什么要分层?相互通信的两个计算机系统必须高度协调工作才行,而这种“协调”是相当复杂的。“分层”可将庞大而复杂的问题,转化为若干较小的局部问题,而这些较小的局部问题就比较易于研究和处理1.2正确认识分层结构1.3 OSI七层模型与TCP/I原创 2021-05-17 23:58:05 · 524 阅读 · 7 评论 -
基于Ubuntu系统下的Hadoop平台搭建详细步骤
基于Ubuntu系统下的Hadoop平台搭建1.更换阿里源(因为访问archive.ubuntu太慢,所以换成国内源,访问更快)2.安装JAVA环境3.创建Hadoop用户3.1创建新用户并设置密码3.2为hadoop用户添加管理员权限4.Hadoop安装4.1解压到我们的Ubuntu系统中4.2切换到Hadoop用户4.3解压Hadoop4.4伪分布式模式配置4.4.1修改配置文件4.4.2执行名称节点格式化4.5启动hadoop4.6使用浏览器查看HDFS信息4.7运行伪分布式实例4.8关闭Hadoop原创 2021-04-25 17:39:23 · 3412 阅读 · 23 评论 -
VMware虚拟机下安装Ubuntu20.04(保姆级教程)
安装Ubantu20.041.Ubantu镜像下载2.配置Ubantu2.1创建新的虚拟机,进入新建虚拟机向导2.2选择自定义类型配置2.3选择硬件兼容性2.4选择稍后安装操作系统2.5选择客户机操作系统2.6命名虚拟机2.7处理器配置2.8 虚拟机内存2.9配置网络类型1.Ubantu镜像下载这里就不挂官网链接了,直接挂网盘链接链接:https://pan.baidu.com/s/1X7rCafmEsWX-jphi3h-JgA 提取码:ulqr链接失效底部留言2.配置Ubantu2.1创原创 2021-04-24 12:22:37 · 102676 阅读 · 33 评论 -
Linux——进程间通信——匿名管道详解
进程间通信1.进程间通信介绍1.1为什么会有进程间通信?1.2进程间通信的目的2.进程间通信——管道2.1管道的引入2.2什么是管道呢?2.2管道——匿名管道2.2.1创建匿名管道的接口2.2.2匿名管道的特性2.2.2.1匿名管道只能用于具有亲缘关系的进程之间2.2.2.2匿名管道是提供字节流服务的2.2.2.3管道的大小是64K(65536)2.2.2.4创建匿名管道返回的文件描述符属性默认是阻塞的2.2.2.5 如何将文件描述符设置为非阻塞的呢?2.3创建一个匿名管道,更改对应读写端的文件描述符为非阻原创 2021-04-04 22:24:38 · 802 阅读 · 0 评论 -
Linux——基础I/O(二)(重定向,缓冲区,dup2,深入理解ext2文件系统,软硬链接,动静态库)
基础I/O(二)1.重定向1.1什么是重定向1.2重定向的原理2.缓冲区2.1什么是缓冲区?2.2两种现象对比3.dup2接口3.1dup2描述及使用3.2dup2接口的原理4.理解文件系统(以ext2分析)4.1什么是文件系统?4.2 ext2文件系统中的磁盘文件4.2.1磁盘结构分析4.2.2 磁盘分区管理的具体方式4.3创建一个文件系统内部发生什么?4.4查找,删除文件发生了什么?4.5Linux中目录也是文件(一切皆文件)4.6 ext2文件系统5.文件的软硬链接6.关于动静态库的理解6.1 C语言原创 2021-04-04 15:46:59 · 991 阅读 · 2 评论 -
Linux——基础IO(一)(系统I/O接口,文件描述符及底层原理)
Linux基础I/O(一)1.C语言中的文件操作1.1写入文件1.2写到显示器1.3追加操作1.4总结(打开文件的方式)2.系统文件I/O2.1接口介绍2.2文件的描述符三级目录1.C语言中的文件操作1.1写入文件1.2写到显示器1.3追加操作1.4总结(打开文件的方式)(a,a+,w,w+,r,r+)说明普通文件和显示器文件在代码层面上没有区别文件操作都会默认打开三个输入输出流(stdin,stdout,stderr)三个流的类型都是FILE*, fopen返回值类型,文件指针原创 2021-03-30 13:09:19 · 497 阅读 · 0 评论 -
模拟实现一个简易的迷你版shell
模拟实现一个简易shell1.shell引入1.1图片举例1.2shell需要完成的事情2.实现细节2.1shell需要展示当前用户,主机名,当前目录,命令提示符2.2获取命令行2.3执行命令行并获取命令行的执行状态3.总结4.效果展示5.源代码1.shell引入1.1图片举例这是一个与shell互动的过程1.2shell需要完成的事情2.实现细节2.1shell需要展示当前用户,主机名,当前目录,命令提示符用一个while循环来控制,每次进程开始都会打印2.2获取命令行原创 2021-03-27 14:47:38 · 1121 阅读 · 0 评论 -
Linux——进程等待和进程替换
进程等待&进程替换1.进程等待1.1进程等待的必要性1.1.1如何避免僵尸进程呢?1.2进程等待的方法1.2.1 wait1.2.2 waitpid()1.2.2.1(pid_t pid)参数(要等待的子进程的进程号)1.2.2.2(int* status)参数(退出的子进程的状态)1.2.2.3(int options)参数(设置当前的waitpid是阻塞的还是非阻塞的)1.2.3 wait和waitpid的区别2.进程替换2.1替换原理(也会发生写时拷贝)2.2替换函数(操作系统提供的六大接口)原创 2021-03-16 21:41:57 · 424 阅读 · 0 评论 -
Linux——进程创建和进程终止
进程创建&进程终止1.进程创建1.1fork函数初识1.2 fork函数返回值1.3 写时拷贝2.进程终止1.进程创建1.1fork函数初识fork函数,从已存在进程中创建一个新进程,新进程为子进程,而原进程为父进程进程调用fork,当控制转移到内核中的fork代码后,内核会做如下几件事:分配新的内存块和内核数据结构给子进程将父进程部分数据结构内容拷贝至子进程添加子进程到系统进程列表当中fork返回,开始调度器调度1.2 fork函数返回值1.3 写时拷贝默认情况下,原创 2021-03-16 11:24:17 · 3108 阅读 · 10 评论 -
Linux基础入门命令(1)
1.ifconfig查看系统的网络配置情况2.ls(list):a.查看当前目录下有哪些文件或文件夹b.常见目录:~:在当前的Linux操作系统当中指用户的家目录/:在当前的Linux操作系统指的是根目录c.常见用法:ls【path】:ls . “.” 代表当前目录ls … “…” 代表上级目录ls -l简写为ll:查看文件或者文件夹的属性ls -a:可以查看隐藏的文件或文...原创 2020-05-02 21:05:45 · 202 阅读 · 0 评论