
Linux
文章平均质量分 71
du1232
这个作者很懒,什么都没留下…
展开
-
简单的UDP网络程序
udpServer.cc#include "udpServer.hpp"void Usage(std::string proc){ std::cout << "Usage: " << proc << " port" <<std::endl;}//./udpServer ip portint main(int argc, char *argv[]){ if(argc != 2){ Usage(argv[0]);原创 2021-07-10 21:16:11 · 349 阅读 · 3 评论 -
Linux 进程间通信--共享内存深度解析
system V共享内存共享内存区是最快的IPC形式。一旦这样的内存映射到共享它的进程的地址空间,这些进程间数据传递不再涉及到内核,换句话说是进程不再通过执行进入内核的系统调用来传递彼此的数据。进行多个进程间通信共享内存函数shmget函数功能:用来创建共享内存原型:int shmget(key_t key, size_t size, int shmflg);参数key:这个共享内存段名字size:共享内存大小shmflg:由九个权限标志构成,它们的用法和创建文件时使用的mode模式标原创 2021-04-22 21:04:43 · 131 阅读 · 0 评论 -
Linux进程间通信---管道-----深度解析
文章目录站在文件描述符的角度来理解管道匿名管道管道读写规则匿名管道特点命名管道匿名管道与命名管道的区别用命名管道实现server&client通信要让两个进程实现通信,必须先让这两个进程看到同一份资源。站在文件描述符的角度来理解管道匿名管道#include <unistd.h>功能:创建一无名管道原型int pipe(int fd[2]);参数fd:文件描述符数组,其中fd[0]表示读端, fd[1]表示写端返回值:成功返回0,失败返回错误代码管道读写规则原创 2021-04-22 17:03:28 · 163 阅读 · 0 评论 -
Linux 文件系统,inode + 软硬链接
文件系统我们使用ls -l的时候看到的除了看到文件名,还看到了文件元数据[root@localhost linux]# ls -l总用量 12-rwxr-xr-x. 1 root root 7438 "9月 13 14:56" a.out-rw-r--r--. 1 root root 654 "9月 13 14:56" test.c每行包含7列: 模式、 硬链接数、 文件所有者、 组、 大小、 最后修改时间 文件 = 属性 + 内容inode{ 属性集合 } block{原创 2021-04-21 22:04:07 · 116 阅读 · 0 评论 -
深度解析Linux中系统文件IO+文件描述符+输出重定向+缓冲区
系统文件IO采用系统接口来进行文件访问接口介绍#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: 要打开或创建的目标文件flags: 打开文件时,可以传入多个参数选项,用下原创 2021-04-17 17:04:15 · 248 阅读 · 0 评论 -
Linux 进程程序替换 + minishell实现
fork函数在linux中fork函数时非常重要的函数,它从已存在进程中创建一个新进程。新进程为子进程,而原进程为父进程。#include <unistd.h>pid_t fork(void);//返回值:自进程中返回0,父进程返回子进程id,出错返回-1进程调用fork,当控制转移到内核中的fork代码后,内核做:分配新的内存块和内核数据结构给子进程将父进程部分数据结构内容拷贝至子进程添加子进程到系统进程列表当中fork返回,开始调度器调度当一个进程调用fork之后,原创 2021-04-05 19:03:51 · 166 阅读 · 0 评论 -
Linux fork函数深度解析(写时拷贝+进程终止(exit)+进程等待(wait,waitpid))
文章目录fork函数fork返回值写时拷贝进程终止进程退出场景进程常见退出方法_exit函数exit函数进程等待wait 方法waitpid方法**参数:**获取子进程status总结fork函数在linux中fork函数时非常重要的函数,它从已存在进程中创建一个新进程。新进程为子进程,而原进程为父进程。#include <unistd.h>pid_t fork(void);//返回值:自进程中返回0,父进程返回子进程id,出错返回-1进程调用fork,当控制转移到内核中的fork原创 2021-03-31 20:50:55 · 606 阅读 · 0 评论 -
Linux 进程(fork 、僵尸进程,孤儿进程)系统调用和库函数的概念
文章目录1.进程1.1描述进程-PCB1.2 task_struct-PCB的一种1.3task_ struct内容分类1.4查看进程1.5通过系统调用获取进程标识符1.6通过系统调用创建进程-fork初识1、如何理解进程创建?2、fork为什么会有两个返回值?如何深刻的理解呢?3、fork父子执行顺序和代码和数据复制的问题-初识2.进程状态2.1Z(zombie)-僵尸进程2.1.1僵尸进程危害:2.2孤儿进程补充用户态和内核态系统调用和库函数概念1.进程课本概念:程序的一个执行实例,正在执行的程序等原创 2021-03-24 16:01:57 · 192 阅读 · 0 评论 -
Linux 进程地址空间详解
进程地址空间是内存吗?先来两段代码感受一下!#include <stdio.h>#include <unistd.h>#include <stdlib.h>int g_val = 0;int main(){ pid_t id = fork(); if(id < 0) { perror("fork"); return 0; } else if(id == 0) { //child printf("child[%d]: %d : %原创 2021-03-20 22:47:24 · 234 阅读 · 0 评论 -
Linux进程优先级and环境变量概念及用法详解
基本概念cpu资源分配的先后顺序,就是指进程的优先权(priority)。优先权高的进程有优先执行权利。配置进程优先权对多任务环境的linux很有用,可以改善系统性能。还可以把进程运行到指定的CPU上,这样一来,把不重要的进程安排到某个CPU,可以大大改善系统整体性能。查看系统进程在Linux系统中,用ps-l命令会类似输出以下几个内容:我们很容易注意到其中的几个重要信息,有下:UID : 代表执行者的身份PID : 代表这个进程的代号PPID :代表这个进程是由哪个进程发展衍生而原创 2021-03-19 17:18:05 · 223 阅读 · 0 评论 -
Linux中复制其他目录中的文件到当前目录
复制整个目录下的文件首先可以看到整体目录如下所示步骤:进入 lesson目录输入指令cp ../126_lesson/* ./ -rf指令ll查看文件就可以看到126_lesson 目录下的所有文件都复制过来了./ //表示当前目录../ // 表示上级目录126_lesson/* //文件路径复制其他目录中的一个文件到当前目录目标:将126_lesson下的test.txt文件复制到lesson中步骤:进入lesson目录中//原创 2021-03-18 16:36:43 · 5962 阅读 · 1 评论 -
使用云服务器 Linux中git clone git push 不通的问题解决
出现错误:fatal: unable to access ‘https://github.com/dk1804/Linux.git/’: Encountered end of file原因:云服务器443端口未对外开放解决方法:以腾讯云为例第一步控制台第二步进入云服务器第三步点击安全组第四步:修改规则,添加规则第五步:自定义中找到HTTP(443)点击完成后,就可以愉快的进行 git clone 和 git push 了!...原创 2021-03-11 11:01:47 · 1415 阅读 · 3 评论 -
Linux gcc/g++使用
编译:预处理/编译/汇编/链接(1)预处理:头文件展开,去注释,宏替换,条件编译。生成(.i)文件(2)编译:将c代码翻译形成汇编代码。生成(.s)文件(3)汇编:将汇编形成目标二进制文件。生成(.o)文件(4)链接:将目标文件和系统库进行链接形成可执行程序(可执行程序)Linux指令:cat helloworld.cgcc -E helloworld.c -o helloworld.i//预处理之后的文件gcc -S helloworld.i -o helloworld.s//汇编语言g原创 2021-03-06 22:13:32 · 260 阅读 · 0 评论 -
Linux 文件目录权限+重定向命令+设置粘滞位+umask命令
修改文件权限命令: chmod u-r 文件名功能:取消拥有者的读权限。命令: chmod u+r 文件名功能:增加拥有者的读权限。命令:chmod u+rw,g-w,o+r 文件名功能:拥有者加上读写权限,所属组减去写权限,other加上读权限。修改目录权限chmod u+r 目录名chmod u-r 目录名功能:目录的读权限,是否允许查看目录下的文件chmod u-w 目录名chmod u+w 目录名功能:目录的写权限,是否允许特定角色在指定目录下创建文件。chmod u原创 2021-02-16 00:21:08 · 367 阅读 · 0 评论