![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
linux菜鸟学习笔记
早年学习笔记
C_Sike
这个作者很懒,什么都没留下…
展开
-
linux系统编程学习day3--exec函数族
exec函数族 接上次的fork()函数的最后的问题,这里通过exec函数族可以解决的,先简略说一说exec函数族大致的作用: 这一族函数都是可以将当前进程的.text、.data替换成苏要加载的程序的.text、.data,然后让进程从新的.text第一条指令开始执行,但进程ID不变,就等于将fork()出来的新的进程的内容全部给替换掉,但是那个外壳是不换的,因为fork()出来一个进程的话原创 2017-11-23 12:59:37 · 165 阅读 · 0 评论 -
linux系统编程学习day4--IPC(进程间通信)
进程间通信 通过上一天的学习,我们已经学会了用fork()函数去在一个进程中创建出另一个子进程,也学会了运用exec函数族来把这个进程给用其他程序覆盖掉,让这个进程执行另一个任务,相应的,从这里就可以引出如何在两个进程间进行通信这个话题,也就是IPC。 先简单的说说IPC得概念: 进程间通信(IPC,Inter-Process Communication),指至少两个进程或线原创 2017-12-20 11:11:55 · 230 阅读 · 0 评论 -
linux系统编程学习day1--MMU和PCB的理解
MMU和PCB的理解 因为之前接触过一部分关于嵌入式系统的东西,大致了解一些mmu具体的工作原理及其虚拟和物理地址的概念,通俗易懂而言的话,mmu就是给你的物理地址一个别名,这个别名才是你在程序中调用的地址。下图是从讲解视频中获取的一个CPU和程序执行的示意图。 对于一个在32位平台中运行的程序而言,有4G的k虚拟地址空间,其中0-3G是用户空间,剩余空间为内核空间这部分空间是不允许程序直原创 2017-11-20 22:12:49 · 522 阅读 · 0 评论 -
linux系统编程学习day5--IPC之管道
管道 管道这个方式个人感觉真的是非常简单的,先简述一下管道的概念: 管道的概念就是这些,需要注意一下的是什么是伪文件,还有就是半双工这两个概念。 伪文件: 这里管道的伪文件其实就是一块内核的缓冲区,把数据都放在这片缓冲区里面然后进行读写操作,伪文件系统是一个linux里面的一个概念,有兴趣的可以查阅一下相关的资料,有很多种伪文件,都代表不懂得意义。 半双工通信方式: 这个概念的话如原创 2017-12-20 11:24:27 · 157 阅读 · 0 评论 -
linux系统编程学习day5--IPC之共享内存(通过mmap实现)
IPC之共享内存(通过mmap实现) 管道那里只是说了下匿名管道且是用于有血缘关系的进程里面才行,为什么没有提到有名管道,个人认为有名管道没有共享内存用的广泛就没有多说,这里主要给说一说常用的一种用于非血缘关系进程间通信的方法——共享内存。 概念还是概念,学习一个新的东西肯定是从概念进行入手的,那么看看共享内存的概念是什么: 共享内存就是允许两个不相关的进程访问同一个逻辑内存。共享内存是在两原创 2017-12-20 13:22:02 · 188 阅读 · 0 评论 -
linux系统编程学习day2--fork()函数的使用和子进程的创建
fork()函数的使用和子进程的创建 今天就是关于进程学习应该算作最基础的一块了,学习了fork()函数的使用,然后理解了具体的进程运行的顺序还有子进程创建之后怎么让子进程进行工作,有点历史的一小步,从以往的单进程程序终于接触到了多进程的程序应该怎么写和使用,说实话,学习进程这个较为抽象的概念还是十分有趣的,特别是fork()函数的两个返回值那个点需要注意一下,思考思考。 介绍一下fork()原创 2017-11-20 23:10:38 · 336 阅读 · 0 评论