Linux下的进程优先级,环境变量及相关操作

进程优先级

进程优先级就是指一个进程对CPU资源获取的优先权(权级其实就是一个数字),优先权高的就会优先执行。
那么为什么要有进程优先级呢?
因为配置进程的优先权对于多任务环境的linux非常有用,可以大大改善系统性能。
通常情况下,我们较常遇见的有交互式进程和批处理进程。
交互式进程:直接与用户进行交互的进程
批处理进程:在后台默默做循环工作的进程
一般情况下,要求交互式进程优先级较高,能够更加优先的被CPU处理(如果不这样做,用户的一个操作可能会响应缓慢,体验效果较差)
因此,进程优先级最大的作用就是让操作系统运行的更加良好。

环境变量

环境变量就是指配置系统运行环境参数的变量,在操作系统中用来指定操作系统运行环境的一些参数。
举一个例子,在我们的C/C++当中,链接的时候我们不需要知道其动态库和静态库在哪里,但是依然可以链接成功,生成可执行程序。这其实就是有相关的环境变量帮助编译器进行查找。
也就是说环境变量能够使系统运行环境配置更加简单灵活,可以通过设置环境变量给一个进程传递参数信息

关于环境变量的基本操作
查看环境变量:env
set可以查看所有变量,包括环境变量
echo $NAME 可以查看指定的(NAME)环境变量

设置环境变量:export

删除环境变量:unset

在代码中环境变量的操作

  1. main函数的第三个参数

     int main(int argc, char* argv[], char* env[]);//env保存环境变量
    

    for (i = 0; env[i] != NULL; i++) {
        printf("env[%d]=[%s]\n", i, env[i]);
    }
  1. 通过一个全局变量

     extern char** environ;//environ保存环境变量
    

     for (i = 0; environ[i] != NULL; i++) 
     {
             printf("environ[%d]=[%s]\n", i, environ[i]);
     }
    
  2. 使用getenv

     char* getenv(const char* name);//通过环境变量名称获取一个指定环境变量的数据
    

     char *ptr = getenv("MYVAL");//MYVAL为环境变量名称
     if (ptr != NULL) {
         printf("%s\n", ptr);
     }else {
         printf("have no this variable\n");
     }
    
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值