Linux
文章平均质量分 91
别吓本抱抱
这个作者很懒,什么都没留下…
展开
-
C语言 pivot_root的Invalid argument错误解决方案
解决PivotRoot系统调用失败原创 2022-06-23 11:12:43 · 1625 阅读 · 0 评论 -
实验6-地址映射与共享 进程间通信
目录:基于共享内存的生产者-消费者程序:共享内存结构体`shmget()`函数`shmat()`函数1、物理页面——>线性地址空间2、进程数据段空间的分布3、实现最后基于共享内存的生产者-消费者程序:进行本次实验需要先完成实验5:信号量的实现和应用不用文件做缓冲区,而是使用共享内存不将生产者和消费者放置同一个文件pc.c,而是生产者producer.c,消费者consumer.c,两个程序都是单进程的,通过信号量和共享缓冲区进行进程间的通信。Linux下,可以通过shmget()和sh原创 2021-08-03 16:45:16 · 2611 阅读 · 0 评论 -
实例解析:跟踪地址翻译过程 从逻辑地址到线性地址再到物理地址
发现网上好像没人说这个问题,自己学习的时候总结了一下,适合有linux基础同学进阶加深理解流程程序放到内存中1、程序分成代码段,数据段,堆,栈,内存映射区域2、从内存中找到一段空闲,得到基地址,段载入到空闲中,将基地址写入到PCB当中3、执行过程中,每取出一条指令,进行重定位,地址翻译概念LDT 叫局部描述符表,是与 GDT 全局描述符表相对应的,内核态的代码用 GDT 里的数据段和代码段,而用户进程的代码用每个用户进程自己的 LDT 里得数据段和代码段。分段PCB里放的应该是一堆基址原创 2022-01-26 14:39:44 · 861 阅读 · 0 评论 -
Linux内存映射实现
1、内存管理架构图分为用户空间,内核空间,硬件三个层面:方便用户——段——虚拟内存方便操作系统——页——物理内存1、用户空间应用程序malloc()申请内存,free()释放内存(是内存分配器ptmalloc提供的接口),内存分配器ptmalloc使用系统调用brk()或者mmap()向内核以页为单位申请内存,然后划分成小内存块分配给程序2、内核空间虚拟内存管理,负责把用户地址映射成虚拟地址,从进程的虚拟地址空间分配虚拟页sys_brk()用来扩大缩小堆,sys_mmap()用来内存映原创 2022-01-19 11:32:56 · 2135 阅读 · 0 评论 -
内核级线程Linux实现
内核在创建进程的时候,在创建 task_struct 的同时,会为进程创建相应的堆栈。每个进程会有两个栈,一个用户栈,存在于用户空间,一个内核栈,存在于内核空间。当进程在用户空间运行时,cpu 堆栈指针寄存器里面的内容是用户堆栈地址,使用用户栈;当进程在内核空间运行时,cpu 堆栈指针寄存器里面的内容是内核栈空间地址,使用内核栈。当进程因为中断或者系统调用而陷入内核态之行时,进程所使用的堆栈也要从用户栈转到内核栈。...原创 2022-01-07 15:42:39 · 1522 阅读 · 0 评论 -
若依管理系统部署到linux(下)
欢迎回来,接下来,要把若依项目部署到linux上。目录1.上传+打包在192.168.xxx.106上部署前端:在192.168.xxx.107上部署后端:打包war包的方式(alternative)2.前端部署3.后端部署(easy)4.前后端关联(!!!)到这,就可以好好研究源码了,进阶大tu神tou程序员不是梦。滑稽1.上传+打包可以在本地打包成jar包扔到服务器上。也可以把源码传到服务器上,在服务器上打包成jar包本文用的是后者。我是在192.168.0.106上部署前端。在192.168原创 2020-07-08 16:56:14 · 3454 阅读 · 3 评论 -
若依管理系统部署到linux(上)
一、前言 1、非常感谢若依作者为大家提供的非常优质的开源web项目,以及codesheep提供的教程。非常感谢!!! 2、若依官方文档:http://doc.ruoyi.vip/ruoyi/ 3、若依官方链接: 1)若依管理系统官方体验地址:http://vue.ruoyi.vip/login?redirect=%2Findex 2)若依官网:http://www.ruoyi.vip/ 3)RuoYi源码地址:https://gitee.com/y_project/RuoYi 4)Ru原创 2020-07-08 16:55:51 · 2682 阅读 · 0 评论 -
centos7无法远程连接MySQL。报错:Can‘t connect to MySQL server on ‘XXX‘ (13)
1.数据库有没授权GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;FLUSH PRIVILEGES;2.firewall防火墙没有开放端口!!我自己就是这个原因,搞了好久才解决的1.添加端口firewall-cmd --zone=public --add-port=3306/tcp --permanent2.重启防火墙systemctl restart firewalld原创 2020-07-07 00:48:03 · 1679 阅读 · 1 评论