zoukankan      html  css  js  c++  java
  • itop-4412开发板使用第一篇-信号量的学习使用

    1. 本次基于itop-4412研究下Linux信号量的使用方法。

    2. 创建信号量的函数,信号量的头文件在那个路径?编译应用程序的话,头文件有3个路径,内核源码头文件,交叉编译器头文件,ubuntu的头文件,不是很理解为啥交叉编译器也需要头文件,全用内核源码不行吗?书上说内核信号量和用户空间信号量(也叫IPC信号量)有区别的,前者用于内核同步,后者用于用户进程间同步。下面的函数是创建或者寻找信号量,在IPC信号量是一组的,内核信号量是一个的。

    sem_id = semget((key_t)1234, 1, 0666 | IPC_CREAT);

    3. 找到semget的函数原型。先找到了头文件iTop4412_Kernel_3.0_20140521iTop4412_Kernel_3.0includelinuxsem.h,再找到C文件iTop4412_Kernel_3.0_20140521iTop4412_Kernel_3.0kernelsemaphore.c,不过奇怪的地方在于本次的例程用到的头文件是,不是linux下的目录,我猜应该是交叉编译器的路径。

    #include <sys/sem.h>

    4. 进入iTop4412_Kernel_3.0_20140521iTop4412_Kernel_3.0kernelsemaphore.c,发现里面的函数是,难道就是上面说的内核信号量的函数,和IPC信号量名称也不一样,翻翻书看下,果然看了一下,linux提供两种信号量,内核信号量,由内核控制路径使用,System V IPC信号量,由用户态进程使用。下面的就是内核部分的信号量。

  • 相关阅读:
    LOJ#6031. 「雅礼集训 2017 Day1」字符串
    LG P4768 [NOI2018] 归程
    LG P3250 [HNOI2016]网络
    BZOJ4644 经典傻逼题
    LG P4373 [USACO18OPEN]Train Tracking P
    CF1375H Set Merging
    LG P6541 [WC2018]即时战略
    CF1097G Vladislav and a Great Legend
    python学习笔记-基本概念
    python学习笔记十-文件操作
  • 原文地址:https://www.cnblogs.com/429512065qhq/p/8486156.html
Copyright © 2011-2022 走看看