![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Linux
Mr-Yuxuan
我是一粒小小程序员
展开
-
神奇的栈帧
C语言中,每个栈帧对应着一个未运行完的函数。栈帧中保存了该函数的返回地址和局部变量。 先看张图对栈的位置有个基本的印象哈:原创 2016-06-11 14:22:15 · 374 阅读 · 0 评论 -
Linux下的进程管理——task_struct
我们都晓得所谓的进程就是正在运行的一个程序,它是由正文段,用户数据段和系统数据段所组成的一个动态实体。系统数据段存放着进程的控制信息。其中包括进程控制块PCB。 而在linux中每一个进程都由task_struct数据结构来定义(也称为任务结构体)。task_struct就是我们通常所说的PCB。它是进程存在的唯一标识,也是Linux进程实体的核心。 当我们调用fork()时,系统会为我们产生原创 2016-06-11 14:12:48 · 284 阅读 · 0 评论 -
从小程序中看make和Makefile的简单使用
我们都知道程序在执行之前会有两个很重要的过程:编译和链接。当然我们在Windows平台的编译器中(像vs),它会自动帮我们生成最后的执行程序,如(xxx.exe);但是Linux下我们使用vim时,gcc和g++是可以一次性将一个源代码生成可执行程序,可是一个项目可不止一个源文件,一个项目的运作是要将各个源代码编译成目标文件后,再将它们链接起来后执行的。 试想一下如果一个工程有上百个源文件,那原创 2016-06-11 14:12:41 · 1848 阅读 · 0 评论 -
Linux常见四种查找命令
最近在学Linux,和很多初学者一样,有一大堆的操作命令要去熟悉和掌握,由于Linux秉承“一切皆文件”的思想,因此我们在操作中经常会使用到文件查找的命令喽,下面就简单介绍下在Linux中比较常用的查找命令:一、which which命令的作用是,在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。也就是说它返回的是你该命令所处的位置。举个例子哈,比如说我现在看下使用gcc原创 2016-06-11 14:12:37 · 4104 阅读 · 0 评论 -
Linux内核中的调度算法
当系统中有多个进程处于就绪状态,要竞争CPU资源时,操作系统就要负责完成如何分配资源的任务。在操作系统中,由调度程序来完成这一选择分配的工作,调度程序所使用的算法即是调度算法。 调度算法需要考虑的指标主要有尽量保证CPU资源分配的公平性;按照一定策略强制执行算法调度;平衡整个计算机系统,尽量保持各个部分都处于忙碌状态。而根据系统各自不同的特点和要求,调度算法又有一些侧重点和目标不同,原创 2016-06-07 21:58:40 · 1224 阅读 · 0 评论