
Linux
文章平均质量分 87
忽晴忽雨江湖
这个作者很懒,什么都没留下…
展开
-
Linux基础命令
命令 功能说明 线上查询及帮助命令 (2 个) man 查看命令帮助,命令的词典,更复杂的还有 info,但不常用。 help 查看 Linux 内置命令的帮助,比如 cd 命令。 文件和目录操作命令 (18 个) ls ...转载 2018-04-19 13:19:39 · 239 阅读 · 0 评论 -
【Linux】Linux中的0644 和 0755的权限
Linux 系统中采用三位十进制数表示权限,如0755, 0644ABCD A- 0, 表示十进制 B-用户 C-组用户 D-其他用户 利用 ls -l可以查看文件的权限--- -> 0 (no excute , no write ,no read)--x -> 1 excute, (no write,...原创 2018-10-31 23:07:08 · 12732 阅读 · 3 评论 -
【Linux】内核态和用户态
一.定义1.内核态:当一个任务(进程)执行系统调用而陷入内核代码中执行时,我们就称进程处于内核运行态(或简称为内核态)。此时处理器处于特权级最高的(0级)内核代码中执行。当进程处于内核态时,执行的内核代码会使用当前进程的内核栈。每个进程都有自己的内核栈。2.用户态:当进程在执行用户自己的代码时,则称其处于用户运行态(用户态)。即此时处理器在特权级最低的(3级)用户代码中运行。当正在执行用...转载 2018-11-09 21:47:36 · 3533 阅读 · 1 评论 -
【Linux】HTTPS的理解
本文是我在今日头条上看到的,希望大家可以共同学习HTTPS(Hyper Text Transfer Protocol over Secure Socket Layer)简言之就是HTTP的安全版本,其提供安全的主要是SSL,SSL是应用层和传输层之间添加一层(SSLSecure Sockets Layer 安全套接层)来提供安全通信;前面Google的Chrome浏览器将不是HTTPS的URL...转载 2018-11-25 21:12:06 · 343 阅读 · 0 评论 -
【Linux】HTTP的理解
HTTP(超文本传输)协议是存在于应用层的协议应用层:负责应用程序之间的数据沟通(常用的协议有:HHTP,FTP,SSH)一.首先我们认识一下URL(统一资源定位符) 通俗的将URL就是我们日常生活中访问的网站。例如:www.baidu.com。 根据下图我们可以很清楚的认识到URL的组成。(可以看博客:https://blog.youkuaiyun.com/ergoug...原创 2018-11-24 21:04:25 · 365 阅读 · 0 评论 -
【Linux】vim的简单配置
vim是从 vi 发展出来的一个文本编辑器。功能丰富,在程序员中被广泛使用,而且可以根据自己需要对其进行配置,下面我们来介绍一些vim的基本配置。 首先将你的Linux切换到超级用户,输入命令 su,输入密码再回车切换到root用户,cd进入当前用户主工作目录,输入vim .vimrc进行vim配置. 以下是我的配置文件,值得说明的一点是最后一个设置set filetype=c是设置默认...转载 2018-12-09 19:12:45 · 776 阅读 · 0 评论 -
【linux】send和recv函数解析
1. send函数int send( SOCKET s, const char FAR *buf, int len, int flags ); 不论是客户端还是服务器端应用程序都用send函数来向TCP连接的另一端发送数据。客户端程序一般用send函数向服务器发送请求,而服务器则通常用send函数来向客户程序发送应答。该函数的:第一个参数指定发送端套接字描述符;第二个参...转载 2019-02-15 20:52:38 · 659 阅读 · 0 评论 -
【Linux】线程安全的单例模式以及计算密集型线程和IO密集型线程
一.单例模式1.含义 一个类只能实例化出一个对象2.单例模式实现的两种方式饿汉模式 我们在程序运行之初就将对象创建好,就是说不管你将来用不用,程序启动时就创建一个唯一的实例对象。是以空间换时间的做法。这样程序运行中想要调用这个实例时都可以直接使用。举个例子:就像是一个人在吃完饭后立刻就去将碗洗了,这样以便于在下一次开饭的时候可以马上吃到饭。 ...原创 2019-02-16 15:04:25 · 340 阅读 · 0 评论 -
一次完整的HTTP请求是怎样的??
写完了HTTP服务器项目,但是对于一个完整的HTTP请求还不是很懂,在这里总结一下,当然这里的总结只是将每个过程进行简化,并没有去深入讲解(实属小弟实力不足啊) 我们都知道,如果我们打开浏览器/www.baidu.com/几秒后就会跳转出百度的首页,接下来就讲解一下这个过程!!1.解析URL 首先浏览器会检测这个url是否正确存在,如果不合法,将会返回一个默认的搜索引擎。...原创 2019-02-26 17:49:24 · 502 阅读 · 0 评论 -
【Linux】GDB的使用总结
在使用Linux的时候利用GDB调试程序是一件很重要的事,在这里就将GDB调试中所用到的命令进行一个总结在使用GDB的前提条件:要在生成二进制代码时 +g (gcc -g test.c -o test)在生产文件后在利用命令进行调试: gdb + 生成二进制文件名(test) ...原创 2018-10-24 12:16:50 · 238 阅读 · 0 评论 -
【Linux】TCP SYN泛洪攻击
尽管这种攻击已经出现了十四年,但它的变种至今仍能看到。虽然能有效对抗SYN洪泛的技术已经存在,但是没有对于TCP实现的一个标准的补救方法出现。你可以在如今的操作系统和设备中找到保护应用层和网络层的不同解决方案的不同实现。本篇论文详细描述这种攻击并展望和评估现在应用于终端主机和网络设备的对抗SYN洪泛方法。1 基本的漏洞SYN洪泛攻击首次出现在1996年。当时Phrack杂志中描述了这种攻击...转载 2018-10-25 20:48:13 · 1391 阅读 · 0 评论 -
【Linux】了解根目录下每个文件的作用
根目录是整个系统最重要的一个目录,因为不但所有的目录都是由根目录衍生出来的, 同时根目录也不开机/还原/系统修复等动作有关。 由于系统开机时需要特定的开机软件、核心档案、开机所需程序、 函式库等等档案数据,若系统出现错误时,根目录也必项要包括有能够修复文件系统的程序才行。 因为根目录很重要,所以在FHS的要求方面,他希望根目录不要放在非常大的分割槽内, 因为越 大的分割槽你会放入越多...原创 2018-08-17 17:38:21 · 10317 阅读 · 0 评论 -
【Linux】进程的理解(二)
本文要讲解以下内容:1.程序地址空间2.fork() / vfork()函数 一.程序地址空间。(1.)首先我们看一下C语言的内存空间分布图:(2.)接下来我们更加深度的理解以下进程的地址空间 1 #include<stdio.h> 2 #include<unistd.h> 3 #include<stdlib.h>...原创 2018-08-30 17:48:22 · 552 阅读 · 0 评论 -
【Linux】进程的理解(一)
本文将从以下方面来理解进程:1.进程的概念 / 什么是进程。2.如何查看进程3.进程状态 / 状态修改4.进程的优先级5.环境变量 一.进程的概念 / 什么是进程 1.通俗来说,进程就是正在运行的一个程序。 2.内核观点:担当分配系统资源(CPU时间,内存)的实体 3.操作系统的角度来说,进程描述为一个结构体...原创 2018-08-21 13:55:32 · 3621 阅读 · 0 评论 -
Xshell连接虚拟机失败的解决方法
最近这一周由于自己的xshell突然连接不到虚拟机,在网上找了很多种方法也没能解决,以至于自己在学习很多知识的时候都没能很好的去验证,去尝试。最后在求助大佬的时候终于将xshell重新连接到了虚拟机!! 以下是我对xshell连接不到虚拟机的几种方法的总结,希望对大家能有帮助:方法一: 1.首先查看利用 ifconfig 命令去查看 IP 地址,如下图:...原创 2018-09-09 11:49:41 · 50884 阅读 · 19 评论 -
【Linux】进程中的替换函数(exec)
摘要:本文主要讲述如何在进程中运行新代码,以及exec系列函数的基本使用方法.在进程中运行新代码 用函数fork创建子进程后,如果希望在当前子进程中运行新的程序,可以调用exec函数执行另一个程序.当进程调用exec函数时,该进程用户空间资源(正文、数据、堆和栈)完全由新程序替代,新程序则从main函数开始执行.因为调用exec函数并没有创建新的进程,所以前后的进程ID并没有改变,也...原创 2018-09-12 09:42:00 · 694 阅读 · 0 评论 -
【Linux】进程的理解(三)
本文主要讲解以下几个知识点:1.进程等待2.进程程序替换3.实现一个简单的shell,并且认识shell的运行原理 一.进程等待 1.首先让我们搞清楚为什么需要进程等待?? 我们知道僵尸进程是一个很可怕的东西,就算用kill -9都是干不掉的,而且僵尸进程就像是毒瘤一般会造成很大的危害(内存泄漏)。所以进程等待很大程度上就是为了避免...原创 2018-09-12 09:43:00 · 558 阅读 · 0 评论 -
【Linux】UDP与TCP的对比并写出TCP和UDP的服务端
UDP (1.)无连接 UDP在传输数据的时候不需要建立连接,可以直接传输。(这一点在UDP服务端程序中可以看到),因此传输速度比较快,适用于传视频,音频。(2.)传输层协议(3.)不可靠传输 a:因为UDP在传输时不需要建立连接,很容易出现错误 b:UDP只有一个socket接收缓冲区,没有...原创 2018-10-14 16:56:05 · 590 阅读 · 0 评论 -
【Linux】TCP的三次握手,四次挥手,以及常见的有关面试题
首先我们要清楚TCP是传输层的协议,传输层的功能就是负责端到端的传输。接下来看一下TCP的三次的三次握手和四次挥手的流程图一.TCP的三次握手在进行TCP的三次握手建立连接之前,客户端和服务端都要做一定的工作。初始化工作:1.客户端:客户端刚开始处于CLOSED状态,首先要创建socket,然后进行accept的连接请求。(这里客户端不需要手动的绑定地址,因为客户端在发送数...原创 2018-10-25 20:50:00 · 719 阅读 · 0 评论 -
【Linux】多线程和多进程 及其应用场景
一. 两者区别进程是分配资源的基本单位;线程是系统调度和分派的基本单位。属于同一进程的线程,堆是共享的,栈是私有的。属于同一进程的所有线程都具有相同的地址空间。多进程的优点:①编程相对容易;通常不需要考虑锁和同步资源的问题。②更强的容错性:比起多线程的一个好处是一个进程崩溃了不会影响其他进程。③有内核保证的隔离:数据和错误隔离。对于使用如C/C++这些语言编写的本地代码,...转载 2019-03-10 14:57:35 · 773 阅读 · 0 评论