ICode9

精准搜索请尝试: 精确搜索
  • 学习笔记72021-10-30 16:34:13

    多进程与线程的优缺点及应用场景 多进程优点 ①编程相对容易;通常不需要考虑锁和同步资源的问题。 ②更强的容错性:比起多线程的一个好处是一个进程崩溃了不会影响其他进程。 ③有内核保证的隔离:数据和错误隔离。 对于使用如C/C++这些语言编写的本地代码,错误隔离是非常有用的:采用多

  • RTX_RTOS之01-CMSIS_RTOS2_Tutorial自译中文版2021-10-30 11:34:43

    文章目录 教程使用 Keil RTX5 的第一步访问 CMSIS-RTOS2 API线程启动实时操作系统创建线程线程管理和优先级内存管理多个实例可连接的线程时间管理时间延迟绝对时间延迟虚拟定时器空闲线程 线程间通信线程标志事件标志信号量使用信号量同步线程多路复用会合(集合)屏障信号

  • C++面经(2):操作系统2021-10-27 10:35:39

    1. 请你说一说进程和线程区别 1)进程是cpu资源分配的最小单位,线程是cpu调度的最小单位。 2)进程有独立的系统资源,而同一进程内的线程共享进程的大部分系统资源,包括堆、代码段、数据段,每个线程只拥有一些在运行中必不可少的私有属性,比如tcb,线程Id,栈、寄存器。 3)一个进程崩溃,不会对

  • 操作系统真相还原 第十章 输入输出系统2021-10-26 18:34:41

    第十章 输入输出系统 同步机制-锁 找出代码中的临界区、互斥、竞争条件 临界区:多个任务访问同一资源时,每个任务中访问资源的指令代码被称为临界区,临界区是代码,并不是资源。 互斥:也可称为排他,是指某一时刻公共资源只能被一个任务独享。 竞争条件:指多个任务以非互斥的方式同时进入临

  • Linux内核同步和异步2021-10-24 21:35:07

    介绍 kernel有很多的同步和异步机制,做简单整理,力求能够熟练使用。 1.同步机制 并发:多个执行单元同时被执行 竞态:并发的执行单元对共享资源(硬件资源和软件上的全局变量等)的访问导致竞争状态。 并发与竞态。 假设有2个进程试图同时向一个设备的相同位置写入数据,就会造成数据混

  • 我要让我们的进程同步,因为我是浪漫的程序员!2021-10-24 13:30:27

    Hello,你好呀,我是灰小猿,一个超会写bug的程序猿! 今天是10.24程序员节

  • 操作系统02——线程同步问题2021-10-23 21:31:58

    一、基本概念 基本任务 协调合作进程的执行次序,使并发执行的各进程间能按照一定规则(或时序)有效的共享资源,以及相互协作,从而使程序的执行具有可再现性 制约关系 间接相互制约关系 当一个进程使用某临界资源时,另一个想使用该临界资源的进程必须等待。由于共享同一资源形成的关

  • Python中,线程threading详解2021-10-23 21:30:47

    Python中最常用的同步有:锁/互斥,以及信号量。其中锁是最简单最低级的机制,信号量用于多线程竞争有限资源的情况。但是锁被释放,线程不一定被释放。 threading.Lock同步锁(原语锁) 通常使用获得锁(加锁)和释放锁(解锁)函数来控制锁的两种状态,在Python中,只需要在公共操作中加上加锁和解

  • 黑马并发编程JUC(信号量、线程安全类)总结2021-10-18 22:02:15

    黑马并发编程JUC总结 9.JUCSemaphore定义原理acquirerelease CountDownLatch为什么需要用到CountDownLatch?定义为什么加载的时候需要使用到countDownLock?商品问题如果并发执行完且获取结果再继续执行?那么CountDownLatch有什么问题? 10.线程安全类分类ConcurrentMap就能保

  • Linux驱动学习记录-8.Linux并发与竞争2021-10-15 19:03:05

    Linux是多任务操作系统,存在福哦个任务操作同一设备或内存的情况,现在介绍并发的管理。 文章目录 一、原子操作1.整形操作API函数2.原子位操作API函数 二、自旋锁1.自旋锁2.API函数3.其他类型的锁 三、信号量1.信号量简介2.API函数 三、互斥体1.互斥体简介2.API函数 一

  • 操作系统学习2021-10-07 18:32:46

    目录 2.1 操作系统的启动 ​  3.1 内存分层结构 3.2 地址空间与地址生成  3.3 内存分配 3.4 压缩式与交换式碎片整理 4.1 非连续内存 分段 ​ 4.2 非连续内存 分页 4.3 页表概述 4.4 多级页表 ​ 4.5 反向页表 5.1 虚拟内存 1  5.2 虚拟内存 2 7.1 进程 定义 7.2 进程 组

  • 信号量与互斥锁之间的区别2021-10-06 13:33:03

    (1):互斥量用于线程的互斥,信号线用于线程的同步。这是互斥量和信号量的根本区别,也就是互斥和同步之间的区别。 (2):互斥量值只能为0/1,信号量值可以为非负整数。 也就是说,一个互斥量只能用于一个资源的互斥访问,它不能实现多个资源的多线程互斥问题。 信号量可以实现多个同类资源

  • Semaphore信号量的使用2021-10-06 10:31:55

    package ThreadTest; import java.util.concurrent.Semaphore; import java.util.concurrent.TimeUnit; public class ThreadTest04 { public static void main(String[] args) { Semaphore semaphore = new Semaphore(3);//表示3个车位 for (int i = 0; i

  • 进程间的五种通信方式2021-10-05 10:03:44

    进程间通信(IPC,InterProcess Communication)是指在不同进程之间传播或交换信息。 IPC的方式通常有管道(包括无名管道和命名管道)、消息队列、信号量、共享存储、Socket、Streams等。其中 Socket和Streams支持不同主机上的两个进程IPC。 以Linux中的C语言编程为例。 一、管道 管道,通常

  • RTX笔记7 - 信号量Semaphores2021-10-04 19:00:58

      信号量用于管理和保护对共享资源的访问。信号量非常类似于互斥锁。互斥锁一次只允许一个线程访问一个共享资源,而信号量可以用来允许固定数量的线程/ISR访问共享资源池。通过使用信号量,可以管理对一组相同外设的访问(例如多个DMA通道)。   信号量对象应该初始化为可用令牌的

  • RTX笔记7 - 互斥信号量Mutex2021-10-04 18:32:25

      互斥锁(Mutex)可用于同步资源访问。   互斥(通常称为Mutex)用于各种操作系统的资源管理。微控制器设备中的许多资源可以被重复使用,但一次只能被一个线程使用(例如通信通道、内存和文件)。互斥锁用于保护对共享资源的访问。创建一个互斥锁,然后在线程之间传递(它们可以获取和

  • P V 操作2021-10-01 22:03:00

    一、PV操作   PV操作是一种实现进程互斥与同步的有效方法。PV操作与信号量的处理相关。P(passeren)通过,理解为申请资源,V(vrijgeven)释放,理解为释放资源。   PV操作是典型的同步机制之一。用一个信号量与一个消息联系起来,当信号量的值为0时,表示期望的消息尚未产生;当信号量的值非0

  • 进程间通信IPC操作记录2021-10-01 02:32:47

    1. 共享内存 1.1 创建 int shmget( key_t key, size_t size, int shmflg ); key : 共享内存的键值, 用于标识共享内存, 可用ftok()函数生成或自己指定 若key选择为IPC_PRIVATE或者0, 则每次生成的共享内存区域由操作系统决定, 即每次运行共享内存的实际位置都是不同的, 这样,

  • 信号量2021-09-30 01:00:37

    /* 信号量的类型 sem_t int sem_init(sem_t *sem, int pshared, unsigned int value); - 初始化信号量 - 参数: - sem : 信号量变量的地址 - pshared : 0 用在线程间 ,非0 用在进程间 - value : 信号量中的值 int

  • RTT学习之设备驱动框架2021-09-29 17:03:46

    一 传感器驱设备: 1 中断模式:中断中释放信号量;FIFO模式接收回调释放信号量,传感器采集线程等到信号量后读设备数据。 2 使用步骤:创建信号量/邮箱,创建和启动线程(线程中先等资源,然后读设备,查找设备,设置回调,打开设备

  • 9.27-每日一题-4082021-09-27 11:04:08

    不管现实多么惨不忍睹,都要持之以恒地相信,这只是黎明前短暂的黑暗而已。 数据结构 1.设指针变量front表示链式队列的队头指针,指针变量rear表示链式队列的队尾指针,指针变量s指向将要插入队列的结点X,则插入队列的操作序列为。(中国科学院大学 2017) A. front->next=s; front=s; B.

  • 哲学家进餐问题2021-09-26 23:03:59

    有五个哲学家围在一张圆桌,分别坐在周围的五张椅子上,在圆桌上有五个碗和物质筷子,他们的生活方式是交替的进行思考和进餐。平时,一个哲学家进行思考,饥饿时便试图取用其左右最靠近他的筷子,只有在他拿到两支筷子时才能进餐。进餐完毕后,放下筷子继续思考。 ​ 我们可以从上面的题

  • PV原语 稍微 详细点的表示方法2021-09-25 09:33:57

    PV原语的边界条件写的太精简,所以我稍微详细点的表示。   https://www.cnblogs.com/cocowool/archive/2012/06/11/2544823.html这篇文章中精简的表示如下: PV原语 P原语:P是荷兰语Proberen(测试)的首字母。为阻塞原语,负责把当前进程由运行状态转换为阻塞状态,直到另一个进程唤醒它。具

  • c语言跨平台信号量封装2021-09-24 23:32:35

    信号量所为一种线程安全对象,在多线程开发中,是有一些使用场景的,比如多个线程或者进程共享同一个资源,或者生产者消费者模式的实现,都可以使用信号量来进行控制资源的有序访问。c语言做多线程开发,实现一个跨平台信号量对象还是有用的。 一、接口设计: 1、数据结构: 在Windows上采用wi

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有