linux
Go 鹏ya
这个作者很懒,什么都没留下…
展开
-
【C++学习笔记】奇淫技巧 - TIsBaseFromBase
【代码】【C++学习笔记】奇淫技巧 - TIsBaseFromBase。原创 2024-04-01 14:33:46 · 112 阅读 · 0 评论 -
【Linux学习笔记】docker容器连pycharm
记得留端口记得开放ssh权限(不止一个)https://zhuanlan.zhihu.com/p/605389180?utm_id=0https://blog.csdn.net/weixin_42934657/article/details/127055318原创 2024-03-08 15:33:18 · 362 阅读 · 0 评论 -
【Linux学习笔记】linux命令行前面hostname展示修改
【代码】【Linux学习笔记】linux命令行前面hostname展示修改。原创 2024-03-05 15:25:10 · 332 阅读 · 0 评论 -
【Linux学习笔记】给shell命令起别名 - 快捷登录不用在ssh xxx@xxx
alias这个配置只在当前会话窗口有效,要想一直有效,就可以把这个命令配置进。中,然后结合一下免密登陆,就可以快速进行远程登录。原创 2024-03-05 00:14:40 · 344 阅读 · 0 评论 -
【Git学习笔记】提交PR
克隆一个仓库。原创 2024-03-01 13:59:48 · 498 阅读 · 0 评论 -
【Linux学习笔记】mmap使用时一个注意点,不然会bug
时,最后一个参数offset必须要对齐到p。处,不然会mmap失败。原创 2024-02-29 19:53:03 · 388 阅读 · 0 评论 -
【Linux学习笔记】protobuf 基本数据编码
wire_type 类型为 2 的数据,是一种指定长度的编码方式:key + length + content,key 的编码方式是统一的((field_number原创 2023-11-26 13:57:05 · 576 阅读 · 0 评论 -
【Linux学习笔记】常用命令汇总
【代码】【Linux学习笔记】常用命令汇总。原创 2023-10-20 14:08:58 · 99 阅读 · 0 评论 -
【Linux学习笔记】消息队列
【代码】【Linux学习笔记】消息队列。原创 2023-09-11 12:32:05 · 249 阅读 · 0 评论 -
【Linux学习笔记】mmap-共享内存进程通信 vs 有名信号量和无名信号量
另外,如果映射的长度超过了文件长度,访问超过文件长度的映射区也会出错。以上方法虽然实现了父子进程之间的通信,但是每次都要依赖一个文件,如果是一个临时文件,打开后马上进行了 unlink 使文件具备了被释放的条件,在进程结束后文件就被释放,因此这个文件根本就没有存在的必要,可通过匿名映射区避免这种情况。注意:父子进程的内存空间遵循 读时共享、写时复制,但打开的文件和 mmap 建立的存储映射区在父子进程之间是一直共享的,因此可通过 mmap 建立存储映射区实现父子进程之间的通信。有名的sem_t通过。原创 2023-03-09 23:06:38 · 614 阅读 · 0 评论 -
【Linux学习笔记】exec进程替换后,线程是否会被替换
的shell开始输出,且(ps -axj | grep main_pid效果 一样)只有主线程一个执行流,之前进程创建的子线程都被关闭了。从实验可以看出,主线程的tid为12287,两个子线程的tid为12288、12306。在被程序替换后,监听。的shell没有了输出,监听。原创 2023-02-27 15:50:05 · 90 阅读 · 0 评论 -
【Linux学习笔记】进程fork子进程时,会复制父进程中的线程吗
要理解 fork 的原理,Copy On Write 的原理,重点是理解虚拟内存和物理内存的关系。fork 之后,子进程会复制父进程的虚拟内存空间,也就是代码段、数据段、堆栈等,虚拟内存空间里表达的就是程序里各个变量的地址,所以子进程里各个变量的地址和父进程里各个变量的地址是一样的。父子进程只读时,不会发生真实的物理内存拷贝,他们的页映射表内容一致,即同样的虚拟内存地址指向同样的物理内存地址;转载 2023-02-27 10:36:55 · 967 阅读 · 0 评论 -
【Linux学习笔记】探究虚拟空间分布
【代码】【Linux学习笔记】探究虚拟空间分布。原创 2023-01-31 13:16:12 · 68 阅读 · 0 评论 -
【Linux学习笔记】模拟进度条
【代码】【Linux学习笔记】模拟进度条。原创 2023-01-31 13:14:02 · 86 阅读 · 0 评论 -
【Linux学习笔记】常用shell命令
【代码】【Linux学习笔记】常用shell命令。原创 2023-01-28 17:36:33 · 57 阅读 · 0 评论 -
【Linux学习笔记】线程池和线程池routine的静态方法
3。原创 2022-12-16 01:32:40 · 93 阅读 · 0 评论 -
【Linux学习笔记】字符串切分
字符串切分原创 2022-11-22 16:08:18 · 894 阅读 · 0 评论 -
【Mysql学习笔记】count(1)、count(*)、count(id)和count(字段)
对于count(主键id)来说,InnoDB引擎会遍历整张表,把每一行的id值都取出来,返回给server层。单看这两个用法的差别的话,你能对比出来,count(1)执行得要比count(主键id)快。对于count(1)来说,InnoDB引擎遍历整张表,但不取值。server层对于返回的每一行,放一个数字“1”进去,判断是不可能为空的,按行累加。)的时候需要把数据一行一行地从引擎里读出来,然后累积计数,但是mysql对count(),MyISAM引擎中直接在磁盘存了表的总行数,因此执行count(原创 2022-10-12 12:28:59 · 1403 阅读 · 0 评论 -
【Linux学习笔记】随笔——CA证书的目的是为了保证client接收到的公钥是server的公钥的可靠性
此图解释可能与小林的图解网络稍有出入,小林的是分解步骤解析每一个技术的作用,我这个是整个大概完整流程。原创 2022-09-12 01:26:15 · 165 阅读 · 0 评论 -
【Linux学习笔记】16-网络协议
一、通过计算器demo初识协议https://gitee.com/ipengx1029/linux101/tree/master/lesson34-protocol二、HTTP协议1、http协议初识原创 2022-07-10 19:14:57 · 198 阅读 · 1 评论 -
【Linux学习笔记】11-进程通信
1、管道匿名管道匿名管道供具有血缘关系的进程进行通信匿名管道通信步骤:1、一个进程分别以读写方式打开同一个文件,这样就有两个文件描述符,一个以read方式指向该文件,一个以write方式指向该文件2、父进程fork创建一个子进程,因为子进程创建以父进程为模版,则子进程的file_struct的fd_array与父进程一样3、让父进程read,子进程write,则关闭父进行的write,保持父进程的read打开;关闭子进程的read,保持子进程的write打开测试1 1 #include原创 2022-03-03 19:31:28 · 888 阅读 · 0 评论 -
【Linux学习笔记】10-软硬链接 & 动静态库
一、软硬链接Linux的inode的理解 - iTech - 博客园一个硬盘分区里会划分为很多个block,文件管理则是对这些block的管理inode Table:每个文件都有一个inode编号,对应编号里存放着文件属性的相关信息 Data blocks:文件的inode中会说明该文件的主体内容存放在哪个data block块中 inode map:inode块的位图,0标识没被占用,1表示被占用 block map:data block块的位图,0标识没被占用,1表示被占用原创 2022-02-25 10:51:04 · 355 阅读 · 1 评论 -
【Linux学习笔记】09-进程控制
目录二、为什么要写时拷贝?三、进程终止四、进程等待为什么要等待?进程等待方法1、wait2、waitpid一、进程创建方式命令行启动命令(程序、指令等) 通过程序自身fork创建子进程PCB:task_struct 进程地址空间:mm_struct二、为什么要写时拷贝?三、进程终止int main() { cout << "hello world" << end; return 0;}..原创 2022-02-13 17:10:31 · 587 阅读 · 0 评论 -
【Linux学习笔记】08-环境变量
环境变量1、getenv:C语言获取环境变量2、环保变量相关命令3、环境变量的组织方式**main函数的参数:argc、argv[]****main函数的参数:env[]**1、env:查看所有环境变量2、echo $PATH :查看PATH下的环境变量问:为什么运行我们生成的test可执行文件需要./test,但是运行ls等命令就可以直接用呢?答:不指定路径,系统会在PATH里的路径里找,PATH:辅助系统进行指令查找PATH=$PATH:/home/xupeng/101/lesson10:将原创 2022-02-11 16:16:30 · 1143 阅读 · 4 评论 -
【Linux学习笔记】07-进程
进程相关**1、ps ajx**2、进程状态1、ps ajxps aux | grep ‘test’ps axj | head -1 && ps aux | grep ‘test’:前面一部分打印属性抬头2、进程状态原创 2022-02-11 13:46:17 · 725 阅读 · 0 评论 -
【Linux学习笔记】06-git
1、get clonegit clone https://gitee.com/ipengx1029/linux101.gitget clone后就把仓库克隆下来了[xupeng@VM-4-13-centos linux101]$ ll -atotal 20drwxrwxr-x 3 xupeng xupeng 4096 Feb 9 21:03 .drwxrwxr-x 3 xupeng xupeng 4096 Feb 9 21:03 …drwxrwxr-x 8 xupeng xupeng原创 2022-02-09 21:32:42 · 582 阅读 · 0 评论 -
【Linux学习笔记】进度条demo
1 #include "stdio.h" 2 #include "unistd.h" 3 #include "string.h" 8 #define NUM 101 9 10 int main() { 11 char bar[NUM]; 12 memset(bar, 0, sizeof(bar)); 13 int i = 0; 14 const char label[] = "|/-\\"; 15 while (i < NUM)..原创 2022-02-09 20:30:09 · 269 阅读 · 0 评论 -
【Linux学习笔记】05-gcc/g++ & make
# 预处理:头文件包含、去注视、宏替换、条件编译gcc -E test.c -o test.i# 编译(翻译成汇编语言)gcc -S test.i -o test.s# 汇编,生成目标二进制文件cc -c test.s -o test.o# 链接,形成可执行程序(默认动态链接)gcc test.o -o mytestldd mytest:可以查看mytest可执行程序的链接方式(动/静)改为静态链接方式gcc test.c -o mytest -static 通过加-static原创 2022-02-09 17:32:06 · 1152 阅读 · 0 评论 -
【Linux学习笔记】解决who is not in the sudoers file.This incident will be reported.
root用户下:vim /etc/sudoers在Allows people in group wheel to run all commands下加入自己的权限:<username> ALL=(ALL) ALL强制保存退出wq!原创 2022-02-08 15:00:05 · 518 阅读 · 0 评论 -
【Linux学习笔记】04-yum/vim相关
1、yum安装2、换源搜centos 7更新 yum 源3、vim1、命令模式w:按单词向前移动b:按单词向后移动shift + 4:移动到行末shift + 6:移动到行首shift + G:移动到整个的最末尾gg:直接到第一行最前面n + gg:定位到第n行yy:复制一行p:粘贴一行n + yy:复制n行n + p:粘贴n次dd:剪切一行n + dd:剪切n行(dd完了可以p操作粘贴)r + “a”:将光标所在的字母改为"a"n + r + “a”:光标所在后连续原创 2022-02-08 14:54:53 · 336 阅读 · 0 评论 -
【Linux学习笔记】03-shell/linux权限
Shell权限[xupeng@VM-4-13-centos lesson3]$ lltotal 120-rw-rw-r-- 1 xupeng xupeng 16 Feb 7 13:03 file1.txt-rw-rw-r-- 1 xupeng xupeng 16 Feb 7 13:03 file.txt-rw-rw-r-- 1 xupeng xupeng 12 Feb 7 13:52 hello.txt-rw-rw-r-- 1 xupeng xupeng 10原创 2022-02-07 20:23:16 · 740 阅读 · 0 评论 -
【Linux学习笔记】02-命令(自己不太记得)
(多叉树中路金具有唯一性使得能够通过路金唯一标识一个文件)=1、cd -用于切换到最近所在的路径2、cd ~进入当前用户的家目录:登录成功时默认所处的路径(root的家目录和普通用户的家目录不一样)3、touch创建一个普通文件/更新文件创建时间(touch已经存在文件)4、stat查看文件详细信息:创建、访问、修改时间等5、文件类型区分6、mkdir -p t1/t2/t3创建有包含关系的文件要加-p7、rmdir & rmrmdir:删除一个空目录rm:直接删除普原创 2022-02-07 16:25:39 · 506 阅读 · 0 评论 -
【Linux学习笔记】01-创建删除用户
1、创建用户在root权限下输入:adduser <用户名>2、设置(修改)用户密码passwd <用户名>3、删除用户userdel -r <用户名>这里的-r一定不能少原创 2022-02-04 17:26:14 · 594 阅读 · 0 评论