![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Linux
文章平均质量分 83
For Nine
这个作者很懒,什么都没留下…
展开
-
Ubuntu22.04中root用户下依然权限不够,执行不了可执行文件
ubuntu上root用户权限不够原创 2022-11-15 21:28:26 · 5493 阅读 · 0 评论 -
syscall()
syscall函数转载 2022-06-03 22:19:25 · 3755 阅读 · 0 评论 -
Linux 线程———详解
1、线程的概念 和 基础知识1.1 什么是线程线程可看作轻量级进程(light weight process),Linux的线程本质仍然是进程。Linux先有进程后有线程,当创建了一个进程时,系统给他分配一段4G的虚拟内存,并在其内生成进程的PCB,当他调用相关函数创建一个线程时,会为新的线程生成一个PCB也存放在当前的4G虚拟内存中,而原来的进程也沦为一个线程。所以,进程和线程的区别是:是否共享地址空间。 进程总是独享4G的虚拟内存,而多个线程共享一段4G的空间。线程是CPU调度的最小单位,也是原创 2022-05-12 21:50:18 · 4135 阅读 · 0 评论 -
Linux高级进程编程———在任意两个进程间传递文件描述符:使用 sendmsg 和 recvmsg 实现
/* 本程序实现子进程打开一个文件描述符,然后将其传递给父进程,父进程通过其获得文件内容 */#include<sys/socket.h>#include<fcntl.h>#include<stdio.h>#include<unistd.h>#include<stdlib.h>#include<assert.h>#include<string.h>static const int CONTROL_LEN =原创 2022-05-08 08:48:26 · 2667 阅读 · 3 评论 -
Linux 进程———详解
1、各种进程相关的基本概念1.1 区分程序和进程程序: 是存储在存储设备(磁盘)上的数据,包含了可执行机器指令(二进制代码)和数据的静态实体。我们说程序不占用系统资源,这里的系统资源指CPU、内存等,但是不包括磁盘进程: 运行的程序会变成进程,是已经被 OS 从磁盘加载到内存上的、动态的、可运行的指令与数据的集合1.2 MMU 内存管理单元存在于CPU中,他有两个功能:① 完成虚拟内存地址到物理内存地址的映射② 设置 / 修改内存的访问级别1.3 虚拟内存运行一个程序,产生进程的同时产生一原创 2022-04-28 12:41:39 · 353 阅读 · 0 评论 -
Linux 文件I/O 及其 多个相关函数
1、文件描述符2、函数open 和 openat调用open 或 openat函数可打开或创建一个文件,两函声明义如下:#include<fcntl.h>int open(const char* path, int oflag, ... /* mode_t mode */);int openat(int fd, const char* path, int oflag, ... /* mode_t mode */);返回值说明:若函数执行成功,返回文件描述符,失败返回-1。参原创 2022-04-26 18:37:17 · 193 阅读 · 0 评论 -
Linux 高级 I/O 函数——《Linux高性能服务器编程》第六章读书笔记
1、概述什么是高级I/O函数不是基础I/O函数的就是高级I/O函数,基础的I/O函数包括open 、read等。本章重点介绍什么?高级I/O函数一般不常用,本章重点介绍与网络编程相关的,他们大致可分为三类:用于创建文件描述符的函数,包括pipe 、dup/dup2函数。用于读写数据的函数,包括readv/writev 、sendfile 、mmap/munmap 、splice 和 tee函数。用于控制I/O行为和属性的函数,包括fcntl函数2、pipe 函数pipe函数创建一个管道原创 2022-04-13 20:52:22 · 261 阅读 · 0 评论 -
Linux 基础中的基础——大多是一些概念
1、根目录所有文件的起点是根目录,根目录的名字是一个字符/2、. 和 ..创建新目录时,会在当前目录自动创建两个文件名: . 指向当前目录.. 指向父目录在根目录中,点点与点相同。原创 2022-04-09 09:50:55 · 398 阅读 · 0 评论