Linux7.17 day07 基础知识

day07 基础知识

回顾之前内容:
1 内核版本 开源
发行版本

2 目录结构(文件系统)
/根
boot etc bin lib home root proc usr var …
stu1 stu2
stu1:家目录/ome/stu1
cd~

3 文件类型 普通文件 - 目标文件 d

4 权限 r w x - chmod u/g/o

5 基本命令 cd touch mkdir pwd ls cp rm mv
cat more less head tai vi/vim

ps   kill    jobs   &

6 sudo su , apt install gcc(软件名)
gcc -o main main.c 预编译 编译 汇编 链接
gcc -o main main.c add.c max.c(多文件 只有一个文件中包含主函数)
make makefile -->cmake

7 库文件:预先编译好的方法的集合
静态库 libxx.a
共享库 libxx.so

1 进程:一个正在运行的程序
由操作系统管理
2 PCB:进程控制块 是进程存在的唯一标志 存放进程的属性信息
struct task_struct;
3 进程状态:就绪 运行 阻塞
4 并发 一个处理器时间片轮转交替执行
并行 多处理器同时执行
5 内存
物理内存 划分成一个个页面
虚拟内存(物理内存不够用) 在磁盘上 不是真实的物理内存 运行比物理内存大的程序
运行程序生成页表 逻辑页 | 物理页

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <string.h>
// argc  参数个数    argv  参数内容    envp  环境变量
  int main(int argc,char* argv[],char* envp[])
  {
      printf("argc=%d\n",argc);// argc  参数个数
      for( int i = 0 ; i < argc ; i++)//argv  参数内容
      {
           printf("argv[%d]=%s", i , argv[i]);
      }
      for( int i = 0 ; envp[i] != NULL ; i++)//envp  环境变量
      {
           printf("envp[%d]=%s\n", i , envp[i]);
      }
  }

复制进程 fork

pid_t fork(void);
函数返回类型pid_t实质是int类型

父进程 子进程
区分:通过fork的返回值
在父进程中返回子进程的pid,在子进程中返回0,失败返回-1

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <string.h>
#include <assert.h>

int main()
{
    int n = 0;  //控制循环次数
    char * s = NULL;  //打印内容

    pid_t pid = fork();
    assert( pid != -1 );
    
    if ( pid == 0 )
    {
         s = "child";
         n = 3;
    }
    else
    {
         s = "parent";
         n = 7;
     }
     for( int i = 0 ; i < n ; i++)
     {
          printf("s = %s\n",s);
          sleep(1);
     }
     
     exit(0);
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值