
Linux庖丁解牛
文章平均质量分 91
Linux从入门到精通!
秋风起,再归来~
大二在读,初识编程~全栈领域新星创作者,分享自己学习心得。欢迎各位大佬来到我的博客指导!编程之路,道阻且长,行则将至!未来我们一起加油!
展开
-
【Linux庖丁解牛】—程序地址空间【进程地址空间 | 虚拟地址空间】
每个进程都有一个虚拟地址空间,为了管理这些虚拟地址空间,在操作系统中势必会有某种数据结构将这些虚拟地址空间管理起来。这里就直接说了,在Linux中,某个进程的虚拟地址空间用mm_struct的结构体描述,在进程的task_struct中有一个指向mm_struct结构体的指针。/*...*///对于普通的⽤⼾进程来说该字段指向他的虚拟地址空间的⽤⼾空间部分,对于内核线程来说这部分为NULL。// 该字段是内核线程使⽤的。当该。原创 2025-05-07 18:43:37 · 868 阅读 · 1 评论 -
【Linux庖丁解牛】—环境变量!
• 环境变量(environment variables)⼀般是指在操作系统中用来指定操作系统运行环境的⼀些参数• 如:我们在编写C/C++代码的时候,在链接的时候,从来不知道我们的所链接的动态静态库在哪 里,但是照样可以链接成功,生成可执行程序,原因就是有相关环境变量帮助编译器进行查找。• 环境变量通常具有某些特殊用途,还有在系统当中通常具有全局特性1.2 命令行参数。原创 2025-04-30 12:22:34 · 1237 阅读 · 0 评论 -
【Linux庖丁解牛】—切换和调度!
在比较老的内核版本中,其数据其实就是在进程结构体对象task_struct【tss】中。参考⼀下Linux内核0.11代码但是,在当代计算机中,数据并不是在task_struct中,而是由一个指针【在task_struct】指向另一个结构体对象【该结构体对象里面保留着当前进程的硬件上下文数据】,这样做的目的是减少结构体的大小,从而加快进程的创建!原创 2025-04-24 08:41:47 · 263 阅读 · 0 评论 -
【Linux庖丁解牛】—进程优先级!
目标资源稀缺导致要通过优先级确认谁先谁后的问题。优先级:可以得到某种资源,先后问题。权限:能否得到某种资源的问题。。进程的优先级本质上也是一种数字(int类型),在task_struct中。。进程优先级值越高,优先级越低,值越低,优先级越高。。目前我们接触到的操作系统大多都是基于时间片的分时操作系统。时间片我们可以理解为每个进程在cup中运行一次的规定时间,无论该进程的代码和数据是否执行完毕,该进程都会从cup中剥离下来等待下一次被调度。【至于操作系统是如何完成的,下面会详细说到】原创 2025-04-25 14:39:42 · 914 阅读 · 0 评论 -
【Linux庖丁解牛】—Linux第一个系统程序—进度条!
在实现进度条之前,这里我们要先铺垫两个概念——回车换行与行缓冲区。原创 2024-12-24 17:40:20 · 2079 阅读 · 67 评论 -
【Linux庖丁解牛】—gcc/g++&make/Makefile!
在我们的实际开发中,不可能将所有代码放在⼀个源⽂件中,所以会出现多个源⽂件,⽽且多个源⽂件之间不是独⽴的,⽽会存在多种依赖关系,如⼀个源⽂件可能要调⽤另⼀个源⽂件中定义的函数,但是每个源⽂件都是独⽴编译的,即每个*.c⽂件会形成⼀个*.o⽂件,为了满⾜前⾯说的依赖关系,则需要将这些源⽂件产⽣的⽬标⽂件进⾏链接,从⽽形成⼀个可以执⾏的程序。它的主要功能是确定文件的类型。上面说到过make的好处就是让我们的工程编译更加的方便,但是到目前为止,我们并没有看到make命令让我们的编译更加方便,甚至还更加复杂了。原创 2024-12-16 21:36:57 · 1292 阅读 · 11 评论 -
【Linux庖丁解牛】—软件安装&vim!
在Linux下安装软件, 一个通常的办法是下载到程序的源代码, 并进行编译, 得到可执行程序.但是这样太麻烦了, 于是有些人把一些常用的软件提前编译好, 做成软件包(可以理解成windows上的安 装程序)放在一个服务器上, 通过包管理器可以很方便的获取到这个编译好的软件包, 直接进行安装.软件包和软件包管理器, 就好比 "App" 和 "应用商店" 这样的关系.yum(Yellow dog Updater, Modified)是Linux下非常常用的一种包管理器. 主要应用在Fedora,原创 2024-11-19 20:31:29 · 2361 阅读 · 76 评论 -
【Linux庖丁解牛】—权限!
你看上了小花,但是有不好意思直接表白,那就让你你家人找媒婆帮你提 亲,所有的事情你都直接跟媒婆沟通,由媒婆转达你的意思给小花,而我们找到媒婆姓王,所以我们叫 它王婆,它对应我们常使用的bash。,我们操作windows 不是直接操作windows内核,而是通过图形接口,点击,从而完成我们的 操作(比如进入D盘的操作,我们通常是双击D盘盘符.或者运行起来一个应用程序)究其原因,也就是在我的目录里面的所有文件我都有删除和新建的权限(即使这个文件我不能读,不能写),因为我对于这个目录有w权限!原创 2024-11-17 16:04:02 · 2075 阅读 · 81 评论 -
【Linux庖丁解牛】—Linux基本指令(下)!
a或–all 详细输出所有信息,依次为内核名称,主机名,内核版本号,内核版本,硬件名,处理器类 型,硬件平台类型,操作系统名称。我们之前可以使用cat指令打印日志文件中的所有内容,现在我们也可以使用管道配合grep指令过滤出我们想要的内容!如果我们想要在本地上传压缩包到云服务器,那我们就可以使用rz指令,方便的话,我们也可以直接使用拖拽的方式上传!打包可以防止文件丢失,压缩可以减少体积,节省存储空间,可以减少网络传送的时间!,其作用是在指定的文件中过滤出包含你指定字符串的内容,并按行打印出来。原创 2024-11-16 14:44:59 · 2335 阅读 · 78 评论 -
【Linux庖丁解牛】—Linux基本指令(中)!
由于find具有强大的功能,所以它的选项也很 多,其中大部分选项都值得我们花时间来了解一下。当我们使用cat指令想要获取一个文件当中的内容时,如果我们不指定文件,则默认到键盘文件当中获取(读取)内容,如果我们使用(原创 2024-10-03 12:00:24 · 2020 阅读 · 114 评论 -
【Linux庖丁解牛】—Linux基本指令(上)!
命令是Linux系统管理和文件浏览中的一个强大工具,通过其提供的各种选项,你可以轻松地以图形化的方式查看和理解复杂的目录结构。我们甚至还可以将我们的code.c文件拷到usr/bin目录下,然后和文件自带的指令一样不用指定绝对路径就可以执行我们的指令!(这里特指inode change time)指的是文件的不同时间戳,它们各自代表了文件的不同方面的变化。指令是Linux系统中一个非常实用的工具,能够帮助用户快速找到命令的执行文件路径,方便执行和管理命令。命令(这在Windows的命令提示符中是常见的)。原创 2024-09-20 21:50:41 · 2080 阅读 · 79 评论 -
【Linux庖丁解牛】—Linux背景介绍&环境搭建!
这个系列的文章学习Linux系统编程,你可能要问Linux从哪里来?它是怎么发展的?在这里简要介绍Linux的发展史。要说 Linux,还得从UNIX说起。原创 2024-08-13 10:54:39 · 1236 阅读 · 136 评论