zoukankan      html  css  js  c++  java
  • clone() 操作系统实验

    吉大实验指导教材《操作系统习题与实验指导》,由左万历和焦素点老师主编的

    在做实验一的时候发现了两个问题:

    1. CLONE_SIGNAND。Linux Kernel 内根本没有这个常量,应该是 CLONE_SIGHAND

    2. 我们编写了一个程序,使用clone()创建四个轻进程。编译时出现如下错误:
    /tmp/ccYR00NJ.o(.text+0x48): In function `main':
    clone_call.c: undefined reference to `sem_init'
    /tmp/ccYR00NJ.o(.text+0x64):clone_call.c: undefined reference to `sem_init'
    /tmp/ccYR00NJ.o(.text+0x13f): In function `producer':
    clone_call.c: undefined reference to `sem_wait'
    /tmp/ccYR00NJ.o(.text+0x1d9):clone_call.c: undefined reference to `sem_post'
    /tmp/ccYR00NJ.o(.text+0x233): In function `consumer':
    clone_call.c: undefined reference to `sem_wait'
    /tmp/ccYR00NJ.o(.text+0x2a8):clone_call.c: undefined reference to `sem_post'
    collect2: ld returned 1 exit status

    原来我们编译的命令是
    gcc clone.c -o clone
    但是我们程序要使用多线程,所以要正确的编译参数是
    gcc -pthread clone.c -o clone

  • 相关阅读:
    根据用户行为发送客服消息
    tp5链接访问
    统计每天分享次数总和
    csv中文乱码
    Jupyter Notebook命令
    Laplace(拉普拉斯)算子
    Sobel算子
    Opencv图像连通域
    Opencv常用函数讲解
    12306 Pytho抢票代码
  • 原文地址:https://www.cnblogs.com/wbb2109/p/clone.html
Copyright © 2011-2022 走看看