自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(6)
  • 收藏
  • 关注

原创 [连载]嵌入式实时操作系统TINIUX设计与实现 – ARM汇编编程规则

内存管理已经基本完成了,在进行下一步开发之前,我们先熟悉一下ARM汇编编程规则:1. 基本概念   • ATPCS (ARM-Thumb Procedure Call Standard)    规定了一些子程序间调用的基本规则,这些规则包括子程序调用过程中寄存器的使用规则,数据栈的使用规则,参数的传递规则。有了这些规则之后,单独编译的C语言程序就可以和汇编程序相互调用。    使用ADS的C语言编...

2017-03-01 00:20:04 429

原创 [连载]嵌入式实时操作系统TINIUX设计与实现 – 内存管理之实现篇

描述完毕“内存管理”的整个轮廓之后,我们来查看具体的内存管理函数是怎么实现的;首先我们查看一下内存初始化函数OSMemInit,这个函数很简单,主要为全局变量gpOSMemBegin,gpOSMemEnd与gpOSMemLFree分配初始数值;/*****************************************************************************...

2017-02-28 07:22:15 625 1

原创 [连载]嵌入式实时操作系统TINIUX设计与实现 – 为内存管理“画个轮廓”

一些朋友看到我上面的描述可能会头晕目眩,不知所云。犹如苏轼那首经典古诗——题西林壁描述的一样:横看成岭侧成峰,远近高低各不同。不识庐山真面目,只缘身在此山中。这时,朋友们需要跳出这个圈子,从整体上对系统的内存管理进行重新认识。下面我们从整体上给内存管理功能“画一个轮廓”。在刚刚为系统分配内存区域之后,这块内存区域一定是一个连续的空间。为了便于管理,我们在这块连续的内存空间中插入内存块信息头,记录内...

2017-02-26 15:53:14 705

原创 [连载]嵌入式实时操作系统TINIUX设计与实现 – 内存管理

嵌入式实时操作系统一般都运行在资源非常有限的芯片上,对内存管理要求比较严格,若使用方式比较粗放,很可能导致内存紧张。在此,我们先提出对内存管理的几点要求,后面再按照这个要求逐步实现。有兴趣的朋友也可以一起思考,共同实现!对内存管理的相关要求如下:1、在嵌入式操作系统未使用之前,为其分配的为一块连续的内存空间;2、该内存空间可以由用户自由指定,即内存的起始位置可以进行配置,方便应用开发,也便于对内存...

2017-02-25 14:59:34 920

原创 [连载]嵌入式实时操作系统TINIUX设计与实现 – 准备

为了方便嵌入式操作系统的跨平台移植,我们先为操作系统定义一些必要的数据类型,同时这些数据类型要尽量避免与用户应用程序的数据类型相冲突。在此我们给系统定义基本的数据类型如下:typedef unsigned char uOS8_t;typedef char sOS8_t;typedef unsigned short uOS16_t;typedef signed ...

2017-02-25 00:06:12 807

原创 [连载]嵌入式实时操作系统TINIUX设计与实现 - 启航

嵌入式实时操作系统TINIUX设计与实现 名称:TINIUX - A tiny and efficient embedded real time operating system (RTOS)芯片MCU:ARM Coterx-M3内核与MCS-51 8051内核,具体型号选用STM32F1系列与STC8系列。开发平台:Keil v5 与 Code::Blocks+SDCC代码许可:遵循MIT开源许...

2017-02-24 23:26:32 997

空空如也

空空如也

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

TA关注的人

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