
操作系统
文章平均质量分 81
Williamhzw
这个作者很懒,什么都没留下…
展开
-
操作系统(三):线程同步的方式有哪些?
建议:这种题如果能带着源码讲解 那你绝对夹在牛A与牛C之间1、临界区(Critical Section):每个进程中访问临界资源的那段代码称为临界区(Critical Section)(临界资源是一次仅允许一个进程使用的共享资源)。如果有多个线程试图访问公共资源,那么在有一个线程进入后,其他试图访问公共资源的线程将被挂起,并一直等到进入临界区的线程离开,临界区在被释放后,其他线程...原创 2019-04-25 19:13:36 · 2112 阅读 · 0 评论 -
操作系统(二):进程间通信方式有哪些,它们都适合用于哪些场景,你在项目总用过哪几种?
介绍一些常用的,这里只谈谈自己的一些理解1,管道:管道分为两种:无名管道和有名管道通常指无名管道:是 UNIX 系统IPC最古老的形式是一种半双工的通信方式,数据只能单向流动,而且只能在具有亲缘关系的进程间使用。有名管道:也叫命名管道,通常在非父子进程通信(1):创建管道(2):打开管道文件(3):管道的写2,信号量:信号量是一个计数器,可以用来控制多...原创 2019-04-25 19:12:16 · 2642 阅读 · 0 评论 -
操作系统(一):简述Linux下进程虚拟空间布局
在x86 32bit Linux下,我们的系统会给每个进程分配一个4G大小的虚拟地址空间。其中前3G内存是用户空间,最后1G是内核空间。所有的进程有各自的用户空间,但所有的进程都共享一个内核空间。从下到上依次:1,0*00000000-0*08048000 128M的不可访问区域2,text: 代码中的指令3,data:代码中的数据4, bss段:代码中未赋值或赋值为0的...原创 2019-04-25 19:11:33 · 452 阅读 · 0 评论 -
操作系统(四):动态链接与静态链接的区别
在回答这个问题之前希望大家大概了解一个文件编译的过程,比如一个C文件在编译成功后文件夹里的文件会有什么变化,大家可以先去创建一个helloworld.c的文件,观察其编译后的变化。那么问题来了 面试官经常会问到动态链接和静态链接的区别,这到底是什么鬼,作为马上面试的小白如何快速理解这道题呢~ 不要急这道题我们要理解动态库和静态库区别,1,了解其文件命名格式静态库:linux下...原创 2019-04-29 18:26:14 · 2657 阅读 · 0 评论