自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Shijia Yin

浮生常恨欢娱少,肯爱千金轻一笑

  • 博客(17)
  • 收藏
  • 关注

原创 【现代操作系统】之I/O软件原理

I/O软件管理的目标第一个目标是设备独立性,我们应该编写这样的设备:它能够访问任意I/O设备而无需事先指定设备。也就是说,U盘,磁盘,CD在我们眼里都是文件,至于如何区分这些文件,这是操作系统要考虑的。第二个目标是错误处理,一般来说,错误应该尽可能地在硬件层面得到处理,或者是在驱动层面得到处理,上层软件很少关心这些事情。程序控制I/OI/O可以以三种根本不同的方式实现:程序控制I/O,中断...

2019-03-27 13:11:05 432

原创 【现代操作系统】之I/O硬件原理

什么是I/O硬件原理不同人对I/O的理解是不同的,对于电子工程师而言,I/O硬件就是芯片,导线,电源,电机和其它组成硬件的物理部件。对程序员而言,I/O是一种软件接口,他们关心的是硬件可以接受的命令和怎样向硬件发出命令,以及硬件返回的信息和完成的功能。I/O设备I/O设备大致可分为两类:块设备和字符设备。块设备:信息被存储在固定大小的块中,每个块都有自己的地址,数据传输以块为单位。硬盘、C...

2019-03-26 18:06:19 929

原创 【现代操作系统】之文件系统的实现

什么是文件系统的实现上一节中,我们从用户角度观察了文件系统,这一节中我们要从实现者的角度考虑问题。用户关心文件是怎样命名的,可以进行什么操作、目录树是什么样的以及类似的界面的问题。而实现者感兴趣的是文件和目录是怎样存储的、磁盘空间是怎样管理的以及怎样使系统有效而可靠地工作等问题。文件系统布局...

2019-03-19 22:16:03 242

原创 PID参数整定方法介绍

仿真概述本次仿真内容主要是验证课上老师所讲的PID参数整定方法以及积分饱和现象与消除方法。积分饱和产生的原因与消除方法原因:在PID中,如果没有I,会产生稳态误差(余差),想象一下,在PID输出之后的通道中,如果有一个恒定的干扰,那么当PID输出为0时,结果的偏差不为零,回到PID,经过结算后得到一个输出值但正好被干扰抵消,那么最终的结果就会稳定在这个不是我们想要的状态,这就是稳态误差。如果...

2019-03-18 19:37:01 25546 4

原创 【现代操作系统】之目录

什么是目录文件系统中用于记录文件信息的一种特殊文件。一级目录系统在这种结构中,一个目录包含所有文件,这个目录成为根目录,如下图。在早期的计算机中,这种设计很普遍,部分原因是因为只有一个用户,这种目录还常用于简单的嵌入式装置。...

2019-03-15 15:41:55 676

原创 【现代操作系统】之文件

什么是文件

2019-03-15 12:49:40 250

原创 【现代操作系统】之分页系统中的设计问题

机制与策略

2019-03-13 14:40:21 346

原创 【现代操作系统】之进程间通信

什么是进程间通信进程间通信就是进程间的信息传递,简单的说,有三个主要问题,第一,一个进程如何把信息传递给另一个进程,第二,两个或更多进程的活动不会出现交叉。第三,进程要按顺序来通信。竞争条件两个进程同时竞争使用一块存储区,这样会造成一些问题,比如有两个进程同时想向一块存储区中写数据,那么前一个写的数据可能就会被后一个进程写的数据所覆盖,这样就会造成第一个程序的异常运行,这就需要竞争条件来约束...

2019-03-11 18:33:03 307

原创 【现代操作系统】之调度

什么是调度在多道程序设计中,当多个进程或线程同时想要使用同一个CPU,就会出现竞争现象。这时候就需要一个程序来协调它们以确定谁可以获得CPU的使用权,这个程序就是调度程序,调度程序使用的算法就是调度算法。调度概述早期的批处理系统时代,CPU是稀缺资源,我们时常需要同时处理多个批处理任务或者与用户交互的任务,一个好的调度程序在提高性能和用户满意度方面是至关重要的,因此,人们花费了大量的时间在创...

2019-03-11 18:32:45 416

原创 【现代操作系统】之地址空间

什么是无存储器抽象

2019-03-11 18:32:37 584

原创 【现代操作系统】之页面置换算法

什么是页面置换算法当发生缺页中断时,操作系统必须选择一块页面将其换出内存,以便为即将调入的页面腾出空间。页面置换算法就是用来高效地进行这种页面置换操作的算法。最优页面置换算法在发生缺页中断时,内存中的有些页面将很快被访问,而有些页面则会在很久后才被访问,我们只要定量地知道这些页面什么时候会被访问,然后选择其中最晚被访问的并将它换出内存就可以实现最优页面置换算法,但是这种方法是无法实现的。因为...

2019-03-11 18:32:28 399

原创 【现代操作系统】之虚拟内存

什么是虚拟内存由于软件所需内存容量的增长速度比内存容量的增长速度还要快,因此内存容量已经难以满足软件的需求,更何况很多时候我们用的不是一个软件,如果使用交换的方法,那么在一些大型程序中,将程序交换出去再交换进来所花费的时间将是相当恐怖的。因此前人发明了一种方法叫做虚拟内存,它的工作机制是:每个程序拥有自己的地址空间,这个空间被分割成多块,每一块被称作一页或页面,每一页都有连续的地址空间,这些页...

2019-03-11 18:32:17 430

原创 两个蓝牙模块之间的通信(BT06和HC05)

首先说明一点,你首先要搞清楚你手中的蓝牙模块是否支持主从模式,如果只支持从模式,就不要浪费时间了,去买一个主从模式的,价格差不多。我一开始手中有两个BT06,我不知道它们只支持从模式,所以浪费了许多宝贵的青春,后来我又找了一个支持主从模式的HC05,花了一段时间将它们配置好了。下面就说一下我的具体配置过程,配置从机按照你的蓝牙型号进行相应的配置,我的从机是BT06,所以我就说它的配置方法,大同...

2019-03-07 14:44:51 9229 4

原创 BT06串口蓝牙模块的配置以及与电脑的配对

配置蓝牙模块step1:确定型号首先我们需要知道我们蓝牙模块的型号,如果蓝牙模块是偶然获得,可以上淘宝搜有没有长得一样的蓝牙模块,找到之后就看看它是什么型号。如果蓝牙模块是自己买的,那买的时候就应该知道型号了。step2:开始配置知道型号以后,我的型号是BT06,所以我就以我的模块配置的方法来继续下文,首先给蓝牙模块接好线,分别是5V,GND,TX,RX,用USB转串口模块和蓝牙模块接好线...

2019-03-07 14:07:25 9296

原创 【现代操作系统】之进程模型

在开始一切之前我们首先要知道什么是进程一台电脑一般会“同时”运行很多程序,这些程序也包括操作系统自身,但是CPU只有一个(先不考虑多核情况),那么如何同时运行这些程序呢,其实这是不可能的,在某一时刻只能有一个程序在CPU上运行,那么如何实现我们想要的“同时”呢?答案是:分时复用,由于CPU的运行速度很快,我们可以让它在多个程序之间快速地切换,这样就会给人造成一种假象,仿佛这些程序是同时运行的,也...

2019-03-04 20:03:16 537

原创 【现代操作系统】之线程模型

什么是线程模型有了进程模型,我们就不用考虑中断,定时器和上下文切换(进程调度的底层实现),只需要考察并行进程,类似的,有了线程模型之后我们就有了这样一个元素:并行实体共享同一个地址空间和所有可用数据的能力。进程模型中的各个程序是独立工作的,而线程模型中的程序是工作于同一个地址空间并共享这个地址空间的数据。从这种工作理念上的不同我们可以感受到,进程模型是为了各个程序之间独立完成各自的工作,而线程模...

2019-03-04 20:03:07 315

转载 阿里70后程序员的24个避坑法则

年龄是一个永恒话题,正如科比说的:“没有人是时光老人的对手”,在技术更新迭代如此之快的时代,大龄技术人员对新技术的接受能力与兴趣可能比不上以前,但总有一些年龄虽大,但依旧充满学习热情的老前辈,我想,这是否就是技术成长道路上最为关键的品质,今天我在一个公众号上就看了这样一位老前辈写的文章,文章讲述了他从小到大学习工作的各个阶段的情况,并进行了对应的总结,以此反思自我,告诫后人。文章内容很多,我只摘抄...

2019-03-02 16:02:49 225

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除