一.主引导程序控制权的转移首先需要了解的是BootLoader内存布局--在嵌入式操作系统中,BootLoader是在操作系统内核运行之前运行。可以初始化硬件设备、建立内存空间映射图,从而将系统的软硬件环境带到一个合适状态,以便为最终调用操作系统内核准备好正确的环境。在嵌入式系统中,通常并没有像BIOS那样的固件程序(注,有的嵌入式CPU也会内嵌一段短小的启动程序),因此整个系统的加载启动任务就完
分类:
其他好文 时间:
2019-11-28 09:24:17
阅读次数:
107
直接干代码,用BIO写一个Server端,然后使用telnet模拟客户端发送数据 import java.io.IOException; import java.io.InputStream; import java.net.ServerSocket; import java.net.Socket; ...
分类:
其他好文 时间:
2019-11-28 01:26:48
阅读次数:
59
实验目的: 理解中断与异常机制的实现机理 对应章节:第三章3.4节,3.5节 实验内容: 1. 理解中断与异常的机制 2. 调试8259A的编程基本例程 3. 调试时钟中断例程 4. 建立IDT,实现一个自定义的中断,功能可自 定义,如特定键盘组合触发某个动作、电子 钟、自己游走的字符显示、蜂鸣器等 ...
分类:
其他好文 时间:
2019-11-24 17:43:03
阅读次数:
89
BIO:线程发起 IO 请求,不管内核是否准备好 IO 操作,从发起请求起,线程一直阻塞,直到操作完成。 NIO:线程发起 IO 请求,立即返回;内核在做好 IO 操作的准备之后,通过调用注册的回调函数通知线程做 IO 操作,线程开始阻塞,直到操作完成。 AIO:线程发起 IO 请求,立即返回;内存 ...
分类:
其他好文 时间:
2019-11-24 11:48:05
阅读次数:
62
一、同步阻塞IO:blocking IO(BIO) 1.过程分析: 当进程进行系统调用时,内核就会去准备数据,当数据准备好后就复制到内核缓冲器,返回成功后将数据复制给进程内存,其中这一系列过程就是阻塞的。 2.特点: 优点:能及时响应数据 缺点:因为整个过程都是阻塞的,所以高并发下性能非常差 二、同 ...
分类:
Web程序 时间:
2019-11-17 20:48:07
阅读次数:
103
编者注:Netty是Java领域有名的开源网络库,特点是高性能和高扩展性,因此很多流行的框架都是基于它来构建的,比如我们熟知的Dubbo、Rocketmq、Hadoop等。本文就netty线程模型展开分析讨论下 : ) IO模型 BIO:同步阻塞IO模型; NIO:基于IO多路复用技术的“非阻塞同步 ...
分类:
编程语言 时间:
2019-11-17 10:28:47
阅读次数:
86
一、了解Unix网络编程5种I/O模型 1.1、阻塞式I/O模型 阻塞I/O(blocking I/O)模型,进程调用recvfrom,其系统调用直到数据报到达且被拷贝到应用进程的缓冲区中或者发生错误才返回。进程从调用recvfrom开始到它返回的整段时间内是被阻塞的。 1.2、非阻塞式I/O模型 ...
分类:
编程语言 时间:
2019-11-16 16:06:10
阅读次数:
451
一、什么是阻塞、非阻塞、同步、异步 我们以A线程调用B线程的过程例子来讲解这四个概念 在一个程序里,A调用B了,此时如果是 同步: A必须等待B返回结果后,才能继续执行,但是在这期间A会一直监控B的返回状态。 异步: A无需等待B的返回结果,当B执行完成后,会通知A来调用。 阻塞: A一直等待B返回 ...
分类:
Web程序 时间:
2019-11-16 12:48:41
阅读次数:
78
在Redis的使用过程中,大多数人都是使用现成的客户端,如Jedis,Redisson,Lettuce。因此本文研究用BIO的方式手写Redis客户端尝试,对遇到的问题进行探究及总结。 1、手写BIO调用类 使用BIO的方式进行Redis客户端的编写,首先定义一个Connection,Connect ...
分类:
其他好文 时间:
2019-11-14 09:28:29
阅读次数:
97
题目描述 Hanks 博士是 BT(Bio Tech,生物技术) 领域的知名专家,他的儿子名叫 Hankson。现在,刚刚放学回家的 Hankson 正在思考一个有趣的问题。 今天在课堂上,老师讲解了如何求两个正整数 c1 c2 的最大公约数和最小公倍数。现在 Hankson 认为自己已经熟练地掌握 ...
分类:
其他好文 时间:
2019-11-11 20:03:36
阅读次数:
71