1 Main memory RAM configuration:Zeroed at power-up for cold-boot to prevent parity errors.Configured and enabled by ROM code at system power-up. 2 Cache memory RAM configuration:Us……继续阅读 » 3年前 (2022-03-19) 2182浏览 0评论2960个赞
本文节选自《See MIPS run2rd》/《MIPS体系结构透视》中的部分章节,结合个人理解,对部分译文有所改动。1.5.2 编址及内存访问1.5.4 程序员可见的流水线效果8.7.8 跳转, 分支和子程序调用指令……继续阅读 » 3年前 (2022-03-19) 2413浏览 0评论2329个赞
1.地址总线数据总线和机器字长2.机器语言和指令集3.CISC 和 RISC4.指令的执行5.流水线作业……继续阅读 » 3年前 (2022-03-19) 1505浏览 0评论2084个赞
1.DMA通道DMA(Direct Memory Access)通道建立在设备和RAM之间,DMAC(DMA Controler)与设备I/O控制器相互作用共同实现数据传送。在PC中,DMA控制器位于主板上负责管理I/O总线的南桥上。典型的PC架构的数据通道示意图如下:在实现DMA传输时,由DMA控制器直接掌管总线,因此,存在着一个总线控制权转移问题。在DM……继续阅读 » 3年前 (2022-03-19) 2707浏览 0评论2848个赞
在MIPS CPU里,你的程序中使用的地址绝对不会和芯片里的物理地址一样(有可能会很接近,但不会相同)。我们分别称为:程序地址和物理地址(Physical Address)。这里所讲的程序地址的含义同虚拟地址(Virtual Address)完全相同,不过不会牵扯到操作系统内存管理(进程)语境下的复杂性。MIPS CPU可以运行在两种特权级别上:用户态和核心……继续阅读 » 3年前 (2022-03-19) 2109浏览 0评论2022个赞
1.链接地址对于链接器,一种普遍情景是由多个子程序来构建一个程序,并生成一个链接好的起始地址为0的输出程序,各个子程序通过重定位在大程序中确定位置。具体来说:利用第一遍扫描得到的数据,链接器将相似段合并,计算出各个段在输出地址空间中的大小和位置。第二遍扫描会利用第一遍扫描中收集到的信息来控制实际的链接过程。它会读取输入文件中的段的数据和重定位信息,并且进行符……继续阅读 » 3年前 (2022-03-19) 1726浏览 0评论2387个赞
在嵌入式开发中,每天都在跟ROM/Flash、RAM/SDRAM打交道,还有那些默默无闻的片内SRAM和EEPROM。但是对SDR/DDR等概念的区分始终不是那么透彻,故网罗相关资料,系统整理了一下ROM/RAM等存储设备的概念。1存储设备1.1 存储设备概述存储设备是用于储存信息的设备或设备。通常是将信息数字化后再以利用电、磁或光学等方式的媒体加以存储。常……继续阅读 » 3年前 (2022-03-19) 2720浏览 0评论167个赞
1. 轮询与中断2. 中断硬件框架3. 中断向量表4. 中断路由5. 中断复用/解复用6. 中断上下文7. 中断底半部延期机制8. Linux网络设备驱动模型中的NAPI模型……继续阅读 » 3年前 (2022-03-19) 2249浏览 0评论2384个赞
什么是真正的实时操作系统做嵌入式系统开发有一段时间了,做过用于手机平台的嵌入式Linux,也接触过用于交换机、媒体网关平台的VxWorks。实际应用后回过头来看理论,才发现自己理解的肤浅,也发现CSDN上好多同学们都对实时、嵌入式这些概念似懂非懂。毕竟如果不做类似的产品,平时接触的机会很少,即使做嵌入式产品开发,基本也是只管调用Platform Team封装……继续阅读 » 3年前 (2022-03-19) 2647浏览 0评论487个赞
预处理器-编译器-汇编器-链接器预处理器会处理相关的预处理指令,一般是以”#”开头的指令。如:#include “xx.h” #define等。编译器把对应的*.cpp翻译成*.s文件(汇编语言);汇编器则处理*.s生成对应的*.o文件(obj目标文件);最后链接器把所有的*.o文件链接成一个可执行文件(?.e……继续阅读 » 3年前 (2022-03-19) 2420浏览 0评论337个赞
嵌入式系统 BootLoader 技术内幕1. 引言在专用的嵌入式板子运行 GNU/Linux 系统已经变得越来越流行。一个嵌入式 Linux 系统从软件的角度看通常可以分为四个层次:(1). 引导加载程序。包括固化在固件(firmware)中的 boot 代码(可选),和 Boot Loader 两大部分。(2). Linux 内核。特定于嵌入式板子的定制……继续阅读 » 3年前 (2022-03-19) 2505浏览 0评论1377个赞
x86 ABI之C函数调用惯例……继续阅读 » 3年前 (2022-03-19) 2845浏览 0评论1989个赞
VxWorks组件技术的研究1.组件概述VxWorks的配置和裁剪是以组件为基本单位。组件是VxWorks相对独立和完整的一个功能模块,也是系统中最小的、可升级的单元,它通常不再包含子节点。VxWorks用CDF文件来描述系统中的组件。CDF(Common Data Format)称作通用数据格式文件,是一种用于存储数据、访问多维数据集的文件格式。CDF文件……继续阅读 » 3年前 (2022-03-19) 2608浏览 0评论308个赞
嵌入式操作系统VxWorks中网络协议存储池原理及实现周卫东 蔺妍 刘利强(哈尔滨工程大学自动化学院,黑龙江 哈尔滨,150001) 摘 要 本文讨论了网络协议存储池的基本原理和在嵌入式操作系统中的实现方法。为在嵌入式系统中实现TCP/IP协议栈,提供了一种有效、简洁、可靠的缓冲区管理。关键词 VxWorks; mBlk; clBlk; 网络协议存储池……继续阅读 » 3年前 (2022-03-19) 2649浏览 0评论639个赞
一.MUX中间层 为了能够兼容更多的网络设备和网络协议,VxWorks操作系统专门在网络设备驱动程序和网络协议层之间增加了MUX接口层。网络设备驱动程序不关心用户通过何种网络协议访问设备,只需要将数据传递给MUX层,或者从MUX层获取需要发送的数据;同样,协议层中的协议也不需要关心用户使用何种网络设备,将数据发送给MUX层或者从MUX层读取数据即可。 ……继续阅读 » 3年前 (2022-03-19) 2955浏览 0评论1034个赞
VxWorks网络协议栈的MUX接口中国矿业大学 张晓华 李智涛徐钊 摘要 嵌入式系统网络协议栈的灵活性在应用上是一个重要的指标。介绍嵌入式操作系统VxWorks网络协议栈的MUX(Multiplexer)接口及其使用方法。关键词 VxWorks 网络协议栈 MUX VxWorks是美国Wind River System公司(风河公司)推出的一个运行在目标机……继续阅读 » 3年前 (2022-03-19) 1472浏览 0评论1661个赞
0 引言在VxWorks BSP中,从romInit.s跳转到romStart()那一刻起,我们便开始从汇编乾坤大挪移到C的世界。作为VxWorks BSP中的第一个C函数,它的主要任务是清空内存(BOOT_COLD and BOOT_CLEAR),并将bootloader或VxWorks(如果压缩则先解压)拷贝重定位到RAM,最后将CPU执行权交给usrI……继续阅读 » 3年前 (2022-03-19) 2208浏览 0评论2363个赞
1 MIPS异常2 MIPS中断3 VxWorks/MIPS异常向量初始化4 VxWorks/MIPS中断初始化5 主频=外频x倍频6 初始化硬件Timer7 挂接定时器中断8 VxWorks中断调度9 tickAnnounce……继续阅读 » 3年前 (2022-03-19) 2752浏览 0评论1058个赞
引言在《VxWorks引导启动过程》和《VxWorks启动之romStart剖析》中都留下了这样一个疑问,那就是bootrom中compressedEntry()和vxWorks_rom(Compress)中usrEntry()这两个桩函数到底是用来干什么的呢?由于桩函数封装的代码只有寥寥数行,我们很容易分析透彻。除了对usrInit()的简单封装外,核心就……继续阅读 » 3年前 (2022-03-19) 1278浏览 0评论2859个赞
一 基本概念及引导概述1 bootloader/bootrom/bootstrapCPU上电经自复位的过程(由硬件时序逻辑决定的Power-On StrappingSequence)后,指令指针指向一个固定的地址(after-reset startingpoint)。这个固定地址因体系架构而异:在一个基于 ARM7TDMI core 的嵌入式系统中,系统在上……继续阅读 » 3年前 (2022-03-19) 2982浏览 0评论1081个赞
本文系统梳理了VxWorks BSP开发中涉及的宏,并结合关键编译链接流程阐述具体宏的要义。……继续阅读 » 3年前 (2022-03-19) 1243浏览 0评论1055个赞
Linux文件系统(一)——群居和一儒家和谐的思想不仅主导着我们的日常生活和社会关系,而且在Unix/Linux文件系统的设计中充分体现。先秦儒家以西周末年太史史伯提出的“和实生物,同则不继。”《国语·郑语》中,则对和谐思想做了进一步的完善和发展,把“和”作为处理人的身心关系、人际关系、群己关系、人与自然关系的根本法则,所谓“和也者,天下之达道也”。 “和”……继续阅读 » 3年前 (2022-03-19) 2965浏览 0评论2221个赞
Linux设备驱动模型(一)-节能之初衷2.6内核增加了一个引人注目的新特性——统一设备模型(device model)。设备模型提供了一个独立的机制专门来表示设备,并描述其在系统中的拓扑结构,从而使得系统具有以下优点:(1)代码重复最小化。(2)提供诸如引用计数这样的统一机制。(3)可以列举系统中所有的设备,观察它们的状态,并且查看它们连接的总线。(4)可……继续阅读 » 3年前 (2022-03-19) 1747浏览 0评论2423个赞
五种I/O模型的性能分析重叠I/O模型的另外几个优点在于,微软针对重叠I/O模型提供了一些特有的扩展函数。当使用重叠I/O模型时,可以选择使用不同的完成通知方式。采用事件对象通知的重叠I/O模型是不可伸缩的,因为针对发出WSAWaitForMultipleEvents调用的每个线程,该I/O模型一次最多都只能支持6 4个套接字。假如想让这个模型同时管理不止6……继续阅读 » 3年前 (2022-03-19) 1885浏览 0评论1532个赞
B/S通信简述整个计算机网络的实现体现为协议的实现,TCP/IP协议是Internet的核心协议,HTTP协议是比TCP更高层次的应用层协议。HTTP(HyperText Transfer Protocol,超文本传输协议)是互联网上应用最为广泛的一种网络协议。所有的WWW文件都必须遵守这个标准。设计HTTP的初衷是为了提供一种发布和接收HTML页面的方法。……继续阅读 » 3年前 (2022-03-19) 1244浏览 0评论1930个赞
PPPoE(Pointto Point Protocol over Ethernet,基于以太网的点对点协议)的工作流程包含发现(Discovery)和会话(Session)两个阶段,发现阶段是无状态的,目的是获得PPPoE终端(在局端的ADSL设备上)的以太网MAC地址,并建立一个惟一的PPPoE SESSION-ID。发现阶段结束后,就进入标准的PPP会……继续阅读 » 3年前 (2022-03-19) 2855浏览 0评论398个赞
通信协议精确地定义了双方通信控制信息和解释信息。协议反映的是对等层的对等实体之间的一种横向关系,严格地说,协议是对等实体共同遵守的规则和约定的集合。……继续阅读 » 3年前 (2022-03-19) 2261浏览 0评论576个赞
VLAN(Virtual LAN),翻译成中文是“虚拟局域网”。LAN可以是由少数几台家用计算机构成的网络,也可以是数以百计的计算机构成的企业网络。VLAN所指的LAN特指使用路由器分割的网络——也就是广播域。……继续阅读 » 3年前 (2022-03-19) 2164浏览 0评论1264个赞
MPEG-4基本概念扫盲……继续阅读 » 3年前 (2022-03-19) 1846浏览 0评论363个赞
IP数据报格式IP数据报(datagram)的头部格式如下:Version:4 bits版本字段标明建立数据报的IP版本,目前的IP版本是IPv4,IPv6正在发展中。IPv4:0100。IHL:4 bitsIP数据报头部长度(Internet Header Length),其度量单位为4 Bytes(32 bits),因此IHL始终是4 Bytes(32 ……继续阅读 » 3年前 (2022-03-19) 2421浏览 0评论2000个赞
select模型本质上是一种分类处理思想,预先声明几个FD_SET(fd_set结构)集合(使用FD_ZERO初始化),例如ReadSet、WriteSet,fd_set数据类型本质上代表着一系列按关注事件分类的套接字集合。本文讨论三种选择模型(都带select,姑且这样称呼):select(选择)、WSAAsyncSelect(异步选择)、WSAEvent……继续阅读 » 3年前 (2022-03-19) 1622浏览 0评论2554个赞
TCP 三次握手建立连接 & 四次挥手断开连接……继续阅读 » 3年前 (2022-03-19) 1840浏览 0评论2627个赞
在 UNIX 系统中,任何 I/O 操作都是通过读写文件描述符(File Descriptor)来实现的。网络通信 I/O 机制也是基于文件描述符来定义实现的。鉴于 WinSock 1 是 WinSock 2 的功能子集,而 WinSock 1 又沿袭兼容 Berkeley Socket API 集,故本文基于 WinSock 1 讲述 socket 编程基……继续阅读 » 3年前 (2022-03-19) 1878浏览 0评论1156个赞
针对 TLS HandShake 中服务器下发的 `Certificate`,macOS/iOS 的 Security.framework 的 SecPolicy.h/SecTrust.h 中定义了证书校验信任评估的接口。调用 `SecTrustEvaluate` 对证书校验通过后,客户端需要基于对服务器的信任来建立凭证。……继续阅读 » 3年前 (2022-03-19) 1736浏览 0评论1592个赞
套接字,简单的说就是通信双方的一种约定,用套接字中的相关函数来完成通信过程。应用层通过传输层进行数据通信时,TCP和UDP会遇到同时为多个应用程序进程提供并发服务的问题。本文初步梳理了socket相关概念和模式。……继续阅读 » 3年前 (2022-03-19) 2989浏览 0评论1892个赞
完成端口对象取代了WSAAsyncSelect中的消息驱动和WSAEventSelect中的事件对象,当然完成端口模型的内部机制要比WSAAsyncSelect和WSAEventSelect模型复杂得多。……继续阅读 » 3年前 (2022-03-19) 3117浏览 0评论1739个赞
Socket网络通信库、C/S Framework、流媒体及P2P方面的一些开源项目参考……继续阅读 » 3年前 (2022-03-19) 2475浏览 0评论1765个赞
802.1X协议的工作机制流程详解802.1X协议是一种基于端口的网络接入控制协议,“基于端口的网络接入控制”是指在局域网接入设备的端口这一级,对所接入的用户设备进行认证和控制。作为一个认证协议,802.1X在实现的过程中有很多重要的工作机制。下图显示了802.1X协议的基本原理:Supplicant发出一个连接请求(EPAoL,ExtensibleAuth……继续阅读 » 3年前 (2022-03-19) 2249浏览 0评论2075个赞
P2P的原理和常见的实现方式 为了项目的后期IM应用,最近在研究libjingle,中间看了也收集了很多资料,感慨网上很多资料要么太过于纠结协议(如STUN、ICE等)实现细节,要么中间有很多纰漏。最后去伪存真,归纳总结了一下,希望对以后的同行有些许帮助。如果有什么需要讨论或者指正的,欢迎留言或者邮件peakflys@gmail.com 一.P2P实现的原理……继续阅读 » 3年前 (2022-03-19) 2766浏览 0评论1811个赞
WNR3500L+TOMATO网络结构分析前几个月入手了一个官翻的WNR3500L,此路由号称开源并对第三方固件支持是很吸引我的地方,开始先是刷了DD-WRT后来又换成TOMATO,在换成TOMATO后通过ssh连接到路由,ifconfig显示出了一大堆interface,除了熟悉的eth0,eht1,br0外,还多出vlan0,vlan1之类的,通过运行b……继续阅读 » 3年前 (2022-03-19) 2722浏览 0评论178个赞
6.2.1 接受连接的方法Winsock扩展函数AcceptEx是唯一能够使用重叠I/O接受客户连接的函数。下面主要深入探讨使用该函数接收连接的问题。前面已经讨论过,当客户连接进来时,服务器需要创建一个套接字来负责维护与一个客户端的会话。使用AcceptEx函数之前必须创建一些套接字,并且这些套接字必须是未绑定、未连接的,即使它们可能在调用TransmitF……继续阅读 » 3年前 (2022-03-19) 1287浏览 0评论1405个赞
一.重叠I/O模型的概念当调用ReadFile()和WriteFile()时,如果最后一个参数lpOverlapped设置为NULL,那么线程就阻塞在这里,直到读写完指定的数据后,它们才返回。这样在读写大文件的时候,很多时间都浪费在等待ReadFile()和WriteFile()的返回上面。如果ReadFile()和WriteFile()是往管道里读写数据,……继续阅读 » 3年前 (2022-03-19) 2347浏览 0评论1269个赞
引言要想编写一个高性能的服务器应用程序,必须实现一个高效的线程模型。让太少或者太多的服务器线程来处理客户的请求,都可能导致性能问题。例如,如果一个服务器创建单个线程来处理所有的请求,那么客户端可能长期等待而得不到响应,因为服务器同一时刻只能忙于处理一个请求。当然单个线程也能并发处理多个请求,当I/O操作被启动时,它可以从一个请求切换到另一个请求,但是这种结构……继续阅读 » 3年前 (2022-03-19) 1792浏览 0评论659个赞
孙靖 2009.5.5Email:jing_sun999@126.com QQ:272964426前段时间实现了一个小型的C/S架构的多人在线即时通信工具,JIGQQ。其中对使用TCP通信有点心得。 记得在我大学时代,就用VB做过TCP的通信。当然那时候是很初级的,发送的数据量也很小的应用。当时就觉得,有时候发送的数据接收端不能接收到,有时候呢觉得……继续阅读 » 3年前 (2022-03-19) 3086浏览 0评论2117个赞
RTP/RTCP/RTSP协议简介……继续阅读 » 3年前 (2022-03-19) 3036浏览 0评论2967个赞