E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
rtems
回答朋友的问题(系统调度细节)
我现在正移植
RTEMS
,对其中的一个变量有疑问。
coolbacon
·
2011-02-28 09:00
thread
多线程
汇编
任务调度
语言
任务
RTEMS
的堆(下)
堆的核心操作主要有初始化、申请、释放、扩展。由于工作空间(Workspace),是供内核使用的,所以相关函数使用的全部是“_”前缀。主要操作分列如下: _Heap_Initialize,将指定的内存初始化成堆; _Heap_Allocate,从指定的堆中申请指定字节数的内存; _Heap_Allocate_aligned,从指定的堆中申请指定字节的内存,并且返回的地址还按照指定的对齐要求对齐;
coolbacon
·
2011-02-25 22:00
算法
工作
user
存储
扩展
alignment
RTEMS
的堆(下)
堆的核心操作主要有初始化、申请、释放、扩展。由于工作空间(Workspace),是供内核使用的,所以相关函数使用的全部是“_”前缀。主要操作分列如下: _Heap_Initialize,将指定的内存初始化成堆; _Heap_Allocate,从指定的堆中申请指定字节数的内存; _Heap_Allocate_aligned,从指定的堆中申请指定字节的内存,并且返回的地址还按照指定的对齐要求对齐;
coolbacon
·
2011-02-25 22:00
算法
工作
user
存储
扩展
alignment
RTEMS
的堆(上)
RTEMS
提供了堆(Heap)、工作空间(Workspace)、内存区域(Region)和固定尺寸的内存分配算法(Partition)。
coolbacon
·
2011-02-25 22:00
工作
算法
list
struct
存储
statistics
链表
操作系统中的链表一般都选择双向链表的设计,
RTEMS
~也不例外。由于面向对象设计思想在~
RTEMS
~中的运用,使得链表在具体的运用中多了一些变化。
coolbacon
·
2011-02-08 20:00
数据结构
struct
null
insert
语言
任务
RTEMS
文件系统(6):内存文件系统(下)
%6.4.2RegularFileHandlerTableFunctions
rtems
_filesystem_file_handlers_r~结构类型定义了处理程序表函数。
coolbacon
·
2011-02-08 19:00
struct
File
command
null
buffer
structure
RTEMS
文件系统(6):内存文件系统(上)
%6In-MemoryFilesystem本节描述了内存文件系统~(In-MemoryFilesystem,IMFS)。IMFS~是一个功能齐全的在内存中保存所有信息的~POSIX~文件系统。%6.1IMFSPerNodeDataStructure每一个普通文件、设备、硬链接和目录都由一个叫~jnode~的数据结构表示。jnode~由以下的结构体类型定义: structIMFS_jnode_t
coolbacon
·
2011-02-08 19:00
File
null
table
Access
constraints
structure
rtems
开关中断 函数(下)
上回说到,ARM的thumb指令集下关中断比较复杂,我们细细的讨论一下:由于arm规定,thumb指令集操纵不了cpsr寄存器,所以必须要由thumb指令集切换到arm指令集上。切换代码,由一段gcc嵌入式的汇编代码完成。 这是从代码中截取出来的关键的切换代码,我用红色字做一下注释: #definestr(x)#x /*将x展开成字符串,str(a
coolbacon
·
2011-01-22 00:00
汇编
Flash
嵌入式
Exchange
编译器
branch
rtems
开关中断 函数(上)
RTEMS
中开关中断的函数:
rtems
_interrupt_disable()
rtems
_interrupt_enable()
rtems
_interrupt_flash() 这三个函数都是宏: /*
coolbacon
·
2011-01-14 00:00
汇编
Flash
语言
compiler
编译器
optimization
RTEMS
文件系统(5):文件系统实现需求(下)
5.4.1FilesystemHandlerTableFunctionsOPS~表函数被定义成一个~
rtems
_filesystem_operations_table~结构
coolbacon
·
2011-01-13 23:00
struct
null
table
buffer
structure
symlink
RTEMS
文件系统(5):文件系统实现需求(上)
5.1General
RTEMS
~文件系统框架的用意是与~POSIX~文件和目录接口标准相兼容。下面文件系统的特性导致了功能交换层。
coolbacon
·
2011-01-13 23:00
RTEMS
文件系统(5):文件系统实现需求(上)
5.1General
RTEMS
~文件系统框架的用意是与~POSIX~文件和目录接口标准相兼容。下面文件系统的特性导致了功能交换层。
coolbacon
·
2011-01-13 23:00
框架
struct
function
File
Access
structure
RTEMS
文件系统(4):系统调用开发信息(下)
4.18mkfifo文件:mkfifo.c处理:这个函数试图在文件系统下的创建一个先进先出节点。该函数基于~mknod()~函数。开发注释:见~mknod()~函数的开发注释。4.19mknod文件:mknod.c处理:此函数允许在文件系统下创建以下类型的节点: 目录; 普通文件; 字符设备; 块设备; FIFOS。截至目前,试图创建一个~FIFO~会使调用函数得到一个~ENOTSUP~的错误。此
coolbacon
·
2011-01-13 22:00
RTEMS
文件系统(4):系统调用开发信息(下)
4.18mkfifo文件:mkfifo.c处理:这个函数试图在文件系统下的创建一个先进先出节点。该函数基于~mknod()~函数。开发注释:见~mknod()~函数的开发注释。4.19mknod文件:mknod.c处理:此函数允许在文件系统下创建以下类型的节点: 目录; 普通文件; 字符设备; 块设备; FIFOS。截至目前,试图创建一个~FIFO~会使调用函数得到一个~ENOTSUP~的错误。此
coolbacon
·
2011-01-13 22:00
数据结构
数据库
网络
测试
table
System
RTEMS
文件系统(4):系统调用开发信息(中)
它基于以下函数和宏:
rtems
_file_descriptor_type();
rtems
_libio_iop(); rtem
coolbacon
·
2011-01-13 22:00
unix
网络
File
Descriptor
permissions
磁盘
RTEMS
文件系统(4):系统调用开发信息(中)
它基于以下函数和宏:
rtems
_file_descriptor_type();
rtems
_libio_iop(); rtem
coolbacon
·
2011-01-13 22:00
网络
unix
File
Descriptor
permissions
磁盘
RTEMS
文件系统(4):系统调用开发信息(上)
4systemCallDevelopmentNotes这一套例程代表应用程序中~
RTEMS
~文件系统为文件和目录提供的接口。所有函数都与~POSIX~标准兼容,如果一个特定的接口已经实现。
coolbacon
·
2011-01-13 22:00
网络
Access
Path
Comments
Descriptor
permissions
RTEMS
文件系统(4):系统调用开发信息(上)
4systemCallDevelopmentNotes这一套例程代表应用程序中~
RTEMS
~文件系统为文件和目录提供的接口。所有函数都与~POSIX~标准兼容,如果一个特定的接口已经实现。
coolbacon
·
2011-01-13 22:00
网络
Access
Path
Comments
Descriptor
permissions
基于Qemu的
RTEMS
仿真平台搭建
(说明:这篇文章是我的朋友写的,他在我的博客上首次发表,姑且算为原创吧)基于Qemu的
RTEMS
仿真平台搭建1概述此文档描述了在WindowsQemu虚拟机下建立
RTEMS
仿真测试环境的过程。
coolbacon
·
2011-01-13 13:00
平台
network
虚拟机
manager
interface
buffer
RTEMS
开发与移植
基于Qemu的
RTEMS
仿真平台搭建
(说明:这篇文章是我的朋友写的,他在我的博客上首次发表,姑且算为原创吧) 基于Qemu的
RTEMS
仿真平台搭建 1概述此文档描述了在WindowsQemu虚拟机下建立
RTEMS
仿真测试环境的过程。
coolbacon
·
2011-01-13 13:00
虚拟机
manager
buffer
NetWork
interface
平台
基于Qemu的
RTEMS
仿真平台搭建
(说明:这篇文章是我的朋友写的,他在我的博客上首次发表,姑且算为原创吧) 基于Qemu的
RTEMS
仿真平台搭建 1概述此文档描述了在WindowsQemu虚拟机下建立
RTEMS
仿真测试环境的过程。
coolbacon
·
2011-01-13 13:00
虚拟机
manager
buffer
NetWork
interface
平台
基于Qemu的
RTEMS
仿真平台搭建
(说明:这篇文章是我的朋友写的,他在我的博客上首次发表,姑且算为原创吧)基于Qemu的
RTEMS
仿真平台搭建1概述此文档描述了在WindowsQemu虚拟机下建立
RTEMS
仿真测试环境的过程。
coolbacon
·
2011-01-13 13:00
network
虚拟机
平台
回答朋友的问题(关于
RTEMS
学习)
如果您的基础好(计算机相关专业基础知识扎实),写过超过10万行的代码,推荐你去研究
RTEMS
,这个是有比较高的技术要求的。如果您的基础不是太扎
coolbacon
·
2011-01-06 19:00
回答朋友的问题(关于
RTEMS
学习)
如果您的基础好(计算机相关专业基础知识扎实),写过超过10万行的代码,推荐你去研究
RTEMS
,这个是有比较高的技术要求的。如果您的基础不是太扎
coolbacon
·
2011-01-06 19:00
c
linux
扩展
手机
产品
磁盘
RTEMS
4.9.4 CSB337 的 skyeye 仿真环境的建立
最近忙着写
rtems
的文章,有朋友问我,怎样用
rtems
跑skyeye.去官网上一看,他们的确也用skyeye跑
rtems
,而且工作的很好。
coolbacon
·
2011-01-04 23:00
RTEMS
4.9.4 CSB337 的 skyeye 仿真环境的建立
最近忙着写
rtems
的文章,有朋友问我,怎样用
rtems
跑skyeye.去官网上一看,他们的确也用skyeye跑
rtems
,而且工作的很好。
coolbacon
·
2011-01-04 23:00
网络
makefile
开发工具
RTEMS
4.9.4 CSB337 的 skyeye 仿真环境的建立
最近忙着写
rtems
的文章,有朋友问我,怎样用
rtems
跑skyeye.去官网上一看,他们的确也用skyeye跑
rtems
,而且工作的很好。
coolbacon
·
2011-01-04 23:00
网络
cache
Path
开发工具
makefile
reference
RTEMS
4.9.4 bootcard.c 中的 boot_card 函数分析
RTEMS
4.9.4 进入boot_card函数即开始全面的初始化。boot_card函数是~
RTEMS
~提供的一个通用初始化框架,不论在何种处理器上,都是使用这个框架为系统做初始化的工作。
coolbacon
·
2010-12-30 08:00
数据结构
工作
框架
任务
hook
Allocation
RTEMS
4.9.4 bootcard.c 中的 boot_card 函数分析
RTEMS
4.9.4 进入boot_card函数即开始全面的初始化。boot_card函数是~
RTEMS
~提供的一个通用初始化框架,不论在何种处理器上,都是使用这个框架为系统做初始化的工作。
coolbacon
·
2010-12-30 08:00
数据结构
工作
框架
任务
hook
Allocation
RTEMS
4.9.4 代码分析 序
从我开始接触
RTEMS
开始起,已经快有两年了。两年几乎将
RTEMS
核心源代码看了个遍,但有些地方总觉得理解的不透彻。所以干脆把自己写的代码分析贴出来,让广大爱好
RTEMS
的朋友批评指正。
coolbacon
·
2010-12-29 23:00
cache
嵌入式
byte
reference
代码分析
X86
RTEMS
4.9.4 代码分析 序
从我开始接触
RTEMS
开始起,已经快有两年了。两年几乎将
RTEMS
核心源代码看了个遍,但有些地方总觉得理解的不透彻。所以干脆把自己写的代码分析贴出来,让广大爱好
RTEMS
的朋友批评指正。
coolbacon
·
2010-12-29 23:00
cache
嵌入式
byte
reference
代码分析
X86
RTEMS
4.9.4 csb337 bsp 的 start.S 分析
启动代码是应用程序中最先被执行的代码,初始化处理器和单板,使之可以执行接下来的~BSP~代码。启动代码一般都是由汇编语言写成。为了使~C~语言多做一些初始化工作,并使整个初始化代码变得更易维护,应尽量减少汇编语言的使用,只做一些必要的工作。这些工作包括:1禁用所有可屏蔽中断;2用~0~填充未初始化数据段~.bss;3初始化~C~程序调用栈;4从~ROM~中将初始化数据拷贝到~RAM~中;5调用~b
coolbacon
·
2010-12-29 23:00
工作
汇编
存储
语言
任务
化工
RTEMS
4.9.4 csb337 bsp 的 start.S 分析
启动代码是应用程序中最先被执行的代码,初始化处理器和单板,使之可以执行接下来的~BSP~代码。启动代码一般都是由汇编语言写成。为了使~C~语言多做一些初始化工作,并使整个初始化代码变得更易维护,应尽量减少汇编语言的使用,只做一些必要的工作。这些工作包括:1禁用所有可屏蔽中断;2用~0~填充未初始化数据段~.bss;3初始化~C~程序调用栈;4从~ROM~中将初始化数据拷贝到~RAM~中;5调用~b
coolbacon
·
2010-12-29 23:00
工作
汇编
存储
语言
任务
化工
RTEMS
文件系统(3):挂载和卸载文件系统
RTEMS
4.9.4filesys.pdf3MountingandUnmountingFilesystems3.1MountPoints下面是一个挂载点的特性列表:挂载点必须是一个目录。
coolbacon
·
2010-12-29 22:00
struct
File
table
任务
filesystems
RTEMS
文件系统(3):挂载和卸载文件系统
RTEMS
4.9.4filesys.pdf3MountingandUnmountingFilesystems3.1MountPoints下面是一个挂载点的特性列表:挂载点必须是一个目录。
coolbacon
·
2010-12-29 22:00
struct
File
table
任务
filesystems
RTEMS
文件系统(2):系统初始化
RTEMS
4.9.4filesystem.pdf 2SystemInitialization
RTEMS
~初始化后执行应用程序初始化。
coolbacon
·
2010-12-29 09:00
框架
File
null
System
存储
ide
RTEMS
文件系统(2):系统初始化
RTEMS
4.9.4filesystem.pdf 2SystemInitialization
RTEMS
~初始化后执行应用程序初始化。
coolbacon
·
2010-12-29 09:00
框架
File
null
System
存储
ide
RTEMS
文件系统(1):路径评估
RTEMS
4.9.4filesystem.pdf 1PathnameEvaluation本章介绍了~
RTEMS
~文件系统的路径评估过程。
coolbacon
·
2010-12-29 08:00
struct
File
table
存储
Access
Path
RTEMS
文件系统(1):路径评估
RTEMS
4.9.4filesystem.pdf 1PathnameEvaluation本章介绍了~
RTEMS
~文件系统的路径评估过程。
coolbacon
·
2010-12-29 08:00
struct
File
table
存储
Access
Path
RTEMS
操作系统概念:字节对齐
现代计算机中内存空间都是按照字节~(Byte)~划分的。从理论上讲似乎对内存的访问可以从任何地址开始,但现实是存储在某些特别地址上的数据需要多次访问,经过特殊处理后才能访问到。为了提高访问速度,需要数据按照一定的规则在空间上排列,而不是顺序的一个接一个的排放,这就是字节对齐~(Bytealignment)。各个硬件平台对存储空间的处理是不同的。一些平台对某些特定类型的数据只能从某些特定地址开始访问
coolbacon
·
2010-12-29 08:00
数据结构
struct
存储
byte
编译器
alignment
RTEMS
操作系统概念:字节对齐
现代计算机中内存空间都是按照字节~(Byte)~划分的。从理论上讲似乎对内存的访问可以从任何地址开始,但现实是存储在某些特别地址上的数据需要多次访问,经过特殊处理后才能访问到。为了提高访问速度,需要数据按照一定的规则在空间上排列,而不是顺序的一个接一个的排放,这就是字节对齐~(Bytealignment)。各个硬件平台对存储空间的处理是不同的。一些平台对某些特定类型的数据只能从某些特定地址开始访问
coolbacon
·
2010-12-29 08:00
数据结构
struct
存储
byte
编译器
alignment
RTEMS
操作系统的概念:任务
常见的实时操作系统,如~uC/OS-II、FreeRTOS、
RTEMS
~中是有这个概念的。这些操作系统有一个共同的特点,即用户的应用程序和操作系统作为一个执行体运行在目标系统上。
coolbacon
·
2010-12-29 08:00
thread
linux
windows
任务
RTEMS
操作系统的概念:任务
常见的实时操作系统,如~uC/OS-II、FreeRTOS、
RTEMS
~中是有这个概念的。这些操作系统有一个共同的特点,即用户的应用程序和操作系统作为一个执行体运行在目标系统上。
coolbacon
·
2010-12-29 08:00
thread
linux
windows
任务
RTEMS
操作系统的概念:堆与栈
在计算机领域,堆栈是一个不容忽视的概念,只要编写程序都要用到。对于很多的初学着来说,堆栈却是一个很模糊的概念。栈~(Stack)~在数据结构中是一种线性表,特点是先进后出~(FirstInLastOut,FILO)。数据结构/footnote{严蔚敏版《数据结构》}中出现堆~(heap)~的地方只有堆排序算法。程序员口中的堆栈是存储代码中数据的方式方法,栈和数据结构中的“栈”是有些联系的,但堆和数
coolbacon
·
2010-12-29 08:00
数据结构
算法
工作
存储
语言
编译器
RTEMS
操作系统的概念:堆与栈
在计算机领域,堆栈是一个不容忽视的概念,只要编写程序都要用到。对于很多的初学着来说,堆栈却是一个很模糊的概念。栈~(Stack)~在数据结构中是一种线性表,特点是先进后出~(FirstInLastOut,FILO)。数据结构/footnote{严蔚敏版《数据结构》}中出现堆~(heap)~的地方只有堆排序算法。程序员口中的堆栈是存储代码中数据的方式方法,栈和数据结构中的“栈”是有些联系的,但堆和数
coolbacon
·
2010-12-29 08:00
数据结构
算法
工作
存储
语言
编译器
RTEMS
的 AT91SAM9260 移植(9):Hello World
http://www.
rtems
.org/ftp/pub/
rtems
/4.9.4/class-examples-4.9.4.tar.bz2 解压缩,以后我们进入class-examples-4.9.4的文件夹
coolbacon
·
2010-12-28 08:00
image
测试
File
Path
工具
makefile
RTEMS
的 AT91SAM9260 移植(9):Hello World
http://www.
rtems
.org/ftp/pub/
rtems
/4.9.4/class-examples-4.9.4.tar.bz2 解压缩,以后我们进入class-examples-4.9.4的文件夹
coolbacon
·
2010-12-28 08:00
image
File
测试
Path
工具
makefile
RTEMS
的 AT91SAM9260 移植(8): 编译
到这里,代码部分就修改完毕了,还需要修改该的就是Autotools的宏和链接脚本。 为了宏生成速度快,我把其他所有无关的BSP全部删除了。Autotools宏的修改相对比较简单,文件位置参考以上的连载,有贴出具体目录下的文件。这里首先修改:c/src/lib/libbsp/arm/acinclude.am这个文件修简单,相当于case语句一样,增加一个case语句的分支。让M4宏可以处理该BSP的
coolbacon
·
2010-12-28 00:00
timer
list
include
makefile
networking
debugging
RTEMS
的 AT91SAM9260 移植(8): 编译
到这里,代码部分就修改完毕了,还需要修改该的就是Autotools的宏和链接脚本。 为了宏生成速度快,我把其他所有无关的BSP全部删除了。Autotools宏的修改相对比较简单,文件位置参考以上的连载,有贴出具体目录下的文件。这里首先修改:c/src/lib/libbsp/arm/acinclude.am这个文件修简单,相当于case语句一样,增加一个case语句的分支。让M4宏可以处理该BSP的
coolbacon
·
2010-12-28 00:00
timer
list
include
makefile
networking
debugging
RTEMS
的 AT91SAM9260 移植(7): 链接脚本
到上一连载为止,
RTEMS
4.9.4的相关代码部分的修改就算结束了。有些细心的朋友会注意到,第三个连载中列出了所有的文件,我们一些文件并没有修改;还有一些文件AT91RM9200中是没有的。
coolbacon
·
2010-12-25 10:00
网络
脚本
table
FreeBSD
translation
debugging
上一页
1
2
3
4
5
6
7
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他