• 操作系统第2次实验报告:创建进程


    个人信息

    姓名:林伟强

    学号:201821121010

    班级:计算1811

    一、实验目的

    熟练Linux创建进程fork操作。

    二、实验内容

    • 在服务器上用VIM编写一个程序:一个进程创建两个子进程。
    • 查看进程树
    • 查看进程相关信息

    三、实验报告

    1. 编写程序

    2. 打印进程树

    程序运行结果:

     (开启2个终端一个挂程序,另一个打印树)

    3. 解读进程相关信息

    用的时候必须在另一个程序中将进程挂起

    (1) ps -ef

    UID        PID  PPID  C STIME TTY          TIME CMD

     uid:为用户id

    pid :进程id

    ppid:父进程的PID(由后面的2个进程可以看出)

    c:为进程占cpu率

    stime 为运行的时候的时间

    TTY是终端名
    pts是虚拟终端/第3终端
     time 运行持续时间
    cmd 为表示启动这个进程的命令

    (2) ps -aux

    USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND

    %cpu:cpu占用率

    %MEM: 占用的记忆体使用率

    VSZ:完全驻留需要会用多少内存

    RSS,表示进程当前实际上占用了多少内存

    STAT,该进程的状态,S表示中断

    剩下的和上面ps -ef相同

    4. 通过该实验产生新的疑问及解答

    为什么我的程序中得到的子进程的pid输出的时候是反着输出的。

    getpid是一种函数,功能是取得进程识别码,许多程序利用取到的此值来建立临时文件,以避免临时文件相同带来的问题。

  • 相关阅读:
    HDU 1847
    HDU 1717
    KMP未优化模板、
    Codeforces Round #340 (Div. 2) B. Chocolate
    HDU 1042 N!
    HDU 1018 Big Number
    HDU 1031 Design T-Shirt
    解决Windows 7删除执行过的 EXE、Bat文件有延迟的问题
    修改Android手机的“虚拟机堆大小”和android:largeHeap来防止APP内存溢出问题
    Android引用百度定位API第三方组件后导致其它.so文件无法正常加载的问题
  • 原文地址:https://www.cnblogs.com/hxrlwq13/p/12623025.html
Copyright © 2020-2023  润新知