linux学习笔记
文章平均质量分 77
从无到有,从小白到大神
ishao97
身在井隅,心向璀璨。
展开
-
Linux下新用户创建、登录以及删除操作小白学习分享
一提到Linux用户,不得不提到一个超级用户和普通用户的概念**超级用户(root)**它是可以在linux系统下做任何事情,不受限制。它只能有一个。普通用户则是在linux下做有限的事情。它可以有多个。**一、创建新普通用户**当我们在第一次使用linux时最开始都是只有一个超级用户(root),而普通用户则是用过超级用户进行创建而形成的,所以我们首先来在超级用户下进行创建一个普通用户**1.**首先进入linux系统中输入指令 whoami 显示root则表示当前用户为超级用户,接下来我原创 2021-01-23 12:55:06 · 2816 阅读 · 0 评论 -
Linux学习笔记-----文件权限更改
一.用echo指令给文件写入新的内容1.当我们使用echo指令对txt文件连续写入全新的内容时,我们不能使用>号,而应该使用>>,>相当于在原内容覆盖该内容,而>>则是增添新内容。如下图二、目录读(r)、写(w)、进入(x)权限说明1.目录的读权限,含义是允许查看目录下的文件file。2.目录的写权限,含义是是否允许特定角色在指定目录下创建文件file。3.目录的x表示是否可以进入该目录。说明:当一个目录不具有x权限时,就算该目录下的文件具有读写权限也无原创 2021-01-25 23:22:27 · 281 阅读 · 0 评论 -
Linux学习笔记-----fork()函数理解
一、认识fork函数1.含义:在linux中fork函数是非常重要的函数,它从已存在进程中创建一个新进程。新进程为子进程,而原进程为父进程,它没有任何参数。2.返回值:它有两个返回值,它的返回值是给调用后的父进程返回子进程的pid,如果调用成功,给子进程返回0值,可以把fork函数理解成一个单链表,它一方面可以显示自己,另一方面可以指向下一个结点,如果该节点为空则返回0.如果该进程创建失败,则返回-1.3.用法:一个父进程希望复制自己,使父子进程同时执行不同的代码段。例如,父进程等待客户端请求,生成子原创 2021-03-06 15:33:27 · 412 阅读 · 0 评论 -
Linux学习笔记-----地址空间
一、研究背景1.kernel 2.6.322.32位平台二、概念及理解地址空间,不是物理内存,我们在语言上打印出来的地址,其实都叫做“虚拟地址”。它是对物理内存的一种虚拟化表示,虚拟空间,最终一定要以某种方式转化到物理内存进程运行时具有独立性的,在数据层面上先进行独立。物理地址,用户一概看不到,由OS统一管理。三、为什么要有地址空间?如果没有地址空间我们进程访问的地址都是物理地址,将会直接对地址进行操作,如果产生了一些野指针将会写坏别人的空间或者数据。一个进程的数据真正在内存存放的位置,是不原创 2021-03-08 14:34:30 · 83 阅读 · 0 评论 -
Linux学习笔记-----系统文件基础I/O接口及文件系统
一、系统文件I/O接口(一)open函数功能:进行打开文件操作函数头文件:#include <sys/types.h>#include <sys/stat.h>#include <fcntl.h>函数接口:int open(const char *pathname, int flags);int open(const char *pathname, int flags, mode_t mode);pathname: 要打开或创建的目标文件flag原创 2021-04-01 22:10:30 · 200 阅读 · 0 评论 -
Linux学习笔记-----进程间通信(管道及共享内存)
要让两个不同进程通信,前提条件是让两个进程看到同一资源。对于进程间要相互通信,我们引入管道和共享内存概念管道是Unix中最古老的进程间通信的形式,要让两个不同进程通信,前提条件是让两个进程看到同一资源。管道的生命周期是随进程的。共享内存是进程通信中最快的,ipc的生命周期随内核,共享内存底层不提供任何的互斥机制。一、匿名管道匿名管道用于进程之间通信,且仅限于本地父子进程之间通信(兄弟、爷孙之间都可以,只要有亲缘关系),结构简单,类似于一根非水平状态的水管,一端进水另一端出水(单工)。相对于命.原创 2021-04-06 17:14:38 · 249 阅读 · 0 评论 -
Linux学习笔记-----进程信号
一、信号概念1.信号是进程之间事件异步通知的一种方式,属于软中断。2.在一个bash(终端)中,只允许有一个前台进程。3.所有信号都必须经过操作系统的手发出。4.用kill-l可以查看系统定义的信号列表。5.普通信号可以发送多次,但是只进入一次,所以有可能丢失。6.实时信号实时性比较强,来了立即处理,信号不会丢失,在系统层面采用链表进行管理。Ctrl-C 产生的信号只能发给前台进程。一个命令后面加个&可以放到后台运行,这样Shell不必等待进程结束就可以接受新的命令,启动新的进程原创 2021-04-19 21:59:48 · 160 阅读 · 0 评论 -
Linux学习笔记-----多线程
一、线程概念(一)什么是线程?在一个程序里的一个执行路线就叫做线程(thread)。更准确的定义是:线程是“一个进程内部的控制序列”。 在Linux系统中,Linux中,没有真正意义上的线程,线程是用进程模拟的,在CPU眼中,看到的PCB都要比传统的进程更加轻量化。 透过进程虚拟地址空间,可以看到进程的大部分资源,将进程资源合理分配给每个执行流,就形成了线程执行流。 线程:调度的基本单位,线程是进程里面的执行流,并且线程在进程的地址空间内运行。进程:线程 1 : n(二)创建一个.原创 2021-05-02 19:13:15 · 219 阅读 · 0 评论 -
Linux学习笔记-----网络初识
一、计算机网络发展历程独立模式: 计算机之间相互独立。 网络互联: 多台计算机连接在一起, 完成数据共享。 局域网LAN: 计算机数量更多了, 通过交换机和路由器连接在一起。 广域网WAN: 将远隔千里的计算机都连在一起。所谓 "局域网" 和 "广域网" 只是一个相对的概念. 比如, 我们有 "天朝特色" 的广域网, 也可以看做一个比较大的局域网。 为什么会产生计算机网络?本质就是线变长了导致了信息传输不统一。二、协议(一)概念协议本质是两台计算机中的一种约定。 行业原创 2021-05-13 20:16:41 · 147 阅读 · 0 评论 -
Linux学习笔记-----vim下多行代码注释与取消
一、注释多行代码1.将光标打到多行代码起始处,比如这里我需要注释73-81行代码,我将光标打到73行处。2.按下Ctrl+V进入VISUAL BLOCK模式,这里我们使用h(左) j (下) k(上) l(右)这四个键来进行操作,一定不要使用键盘的箭头,亲测无效。如下,我们使用j (下)键走到81行。3.接着按下大写的I 键或者按Shift+i (两个效果一样,都是大写I)切换到输入模式,直接输入注释符号//,再按下Esc就可完成注释了。二、取消注释多行代...原创 2021-05-19 18:11:40 · 1730 阅读 · 0 评论 -
Linux学习笔记-----网络编程套接字
一 、概念(一)端口号概念端口号标定该主机上互联网中唯一一个进程。 进程ID是每个进程都有的,但是端口号只有是网络进程才给指派端口号。 一个端口号用来标识一个进程,一个进程可以绑定多个端口号。一个进程可以同时拥有端口和pid。 传输层协议(TCP和UDP)的数据段中有两个端口号, 分别叫做源端口号和目的端口号. 就是在描述 "数据是谁发的, 要发给谁"。(二)套接字概念所谓套接字(Socket),就是对网络中不同主机上的应用进程之间进行双向通信的端点的抽象,套接字编程本质是进程间原创 2021-05-16 21:17:18 · 256 阅读 · 1 评论