自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

帆星的天空

并不经常登录,留言回复会比较晚。。

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

原创 OpenDaylight-Boron学习笔记: 6 VTN模块

环境及软件版本说明===SN-Controller:CPU: 2 CoresRAM: 4GBDisk: 32GBOperating System: CentOS7 x86_64 1611(Linux 3.10.0-514) Infrastructure ServerIP1: 10.0.3.100/24 (Public Network)IP2: 172.16.3.100/24 (SDN Network

2017-05-23 16:03:31 1952 2

原创 OpenDaylight-Boron学习笔记: 5 OpenFlowPlugin模块

环境及软件版本说明===SN-Controller:CPU: 2 CoresRAM: 4GBDisk: 32GBOperating System: CentOS7 x86_64 1611(Linux 3.10.0-514) Infrastructure ServerIP1: 10.0.3.100/24 (Public Network)IP2: 172.16.3.100/24 (SDN Network

2017-05-19 15:31:38 3496

原创 OpenDaylight-Boron学习笔记: 4 OVSDB模块

环境及软件版本说明===SN-Controller:CPU: 2 CoresRAM: 4GBDisk: 32GBOperating System: CentOS7 x86_64 1611(Linux 3.10.0-514) Infrastructure ServerIP1: 10.0.3.100/24 (Public Network)IP2: 172.16.3.100/24 (SDN Network

2017-05-17 15:50:25 3692

原创 OpenDaylight-Boron学习笔记: 3 L2Switch模块

环境及软件版本说明===SN-Controller:CPU: 2 CoresRAM: 4GBDisk: 32GBOperating System: CentOS7 x86_64 1611(Linux 3.10.0-514) Infrastructure ServerIP1: 10.0.3.100/24 (Public Network)IP2: 172.16.3.100/24 (SDN Network

2017-05-12 16:51:39 4988 2

原创 OpenDaylight-Boron学习笔记: 2 DLUX模块

环境及软件版本说明===SN-Controller:CPU: 2 CoresRAM: 4GBDisk: 32GBOperating System: CentOS7 x86_64 1611(Linux 3.10.0-514) Infrastructure ServerIP1: 10.0.3.100/24 (Public Network)IP2: 172.16.3.100/24 (SDN Network

2017-05-12 11:24:38 1621 1

原创 OpenDaylight-Boron学习笔记:1 实验环境搭建说明

OpenDaylight-Boron学习笔记:实验环境搭建说明

2017-05-03 17:14:51 2218

原创 NanoPC-T2 Uboot启动过程分析 - 3-2 启动命令的执行

回忆上一节,UBoot当前要解析和执行启动命令。该启动命令存储在环境变量bootcmd中。回忆环境变量的内容:baudrate=115200bloader=ext4load mmc 0:1bootcmd=$bloader 0x48000000 $kernel;$bloader 0x49000000 root.img.gz;bootm 0x48000000bootdelay=0bootfile=uI

2016-07-29 10:31:51 1486

原创 NanoPC-T2 Uboot启动过程分析 - 3-1 main_loop()初认识

main_loop()是uboot的主循环,位于\/uboot-root\/common\/main.c中。其代码如下:void main_loop(void){ const char *s; bootstage_mark_name(BOOTSTAGE_ID_MAIN_LOOP, "main_loop"); modem_init(); cli_init(); run_preboot_environ

2016-07-29 10:31:10 2195 1

原创 NanoPC-T2 Uboot启动过程分析 - 2-6 board_init_r() part 2

在继续分析之前,先回顾当前 gd 的内容:bd_t *bd = 0x42BF_FF10{unsigned long bi_memstart = 0phys_size_t bi_memsize = 0unsigned long bi_flashstart = 0unsigned long bi_flashsize = 0unsigned long bi_flashoffset = 0unsigned

2016-07-29 10:30:21 1376

原创 NanoPC-T2 Uboot启动过程分析 - 2-5 board_init_r() part 1

在继续分析之前,先回顾一下当前相关寄存器的值、内存空间的使用情况和相关变量的值的情况。 r0 = 0x42BF_FF60 @ &gdr1 = 0x42C0_0000r2 = 0x42BF_FF10 @ &spr9 = 0x42BF_FF60 @ &gdr13 = &( bl mmu_turn_on ) @ /uboot-root/arch/arm/cpu/slsiap/s5p4418/start.

2016-07-29 10:29:33 1314

原创 NanoPC-T2 Uboot启动过程分析 - 2-4 init_sequence_f[] part 2

在继续分析之前,先回顾一下当前相关寄存器的值、内存空间的使用情况和相关变量的值的情况。Registers:r0 = 0r9 = 0x42BF_FF60 @ &gdr13 = &( bl mmu_turn_on ) @ /uboot-root/arch/arm/cpu/slsiap/s5p4418/start.Ssp = 0x42BF_FF60lr = &( bl board_init_f ) @

2016-07-29 10:28:19 846

原创 NanoPC-T2 Uboot启动过程分析 - 2-3 init_sequence_f[] part 1

在继续分析之前,先回顾一下当前相关寄存器的值与内存空间的使用情况。Registers:r0 = 0r9 = 0x42BF_FF60 @ &gdr13 = &( bl mmu_turn_on ) @ /uboot-root/arch/arm/cpu/slsiap/s5p4418/start.Ssp = 0x42BF_FF60lr = &( bl board_init_f ) @ /uboot-roo

2016-07-29 10:27:17 1773

原创 NanoPC-T2 Uboot启动过程分析 - 2-2 board_init_f

在本节继续之前,先回顾相关寄存器的内容与内存空间的使用情况:寄存器:r13 = &( bl mmu_turn_on ) @ /uboot-root/arch/arm/cpu/slsiap/s5p4418/start.Ssp = 0x42C0_0000lr = &( bl mmu_on ) @ /uboot-root/arch/arm/cpu/slsiap/s5p4418/mmu_asm.S内存空

2016-07-29 10:25:55 1288 3

原创 NanoPC-T2 Uboot启动过程分析 - 2-1 初始启动

从上一章的分析可看到,UBoot已经从SD卡或Flash被复制到 0x42C0_0000 内存上,并开始从这里开始执行。为了方便说明,以下将UBoot源码的根目录位置表示为 /uboot-root 。首先,先找到 /uboot-root/u-boot.lds,这是uboot编译时的链接文件,打开后重点关注以下内容:ENTRY(_stext)SECTIONS{ . = 0x00000000; . =

2016-07-29 10:24:45 1296 2

原创 NanoPC-T2 Uboot启动过程分析- 1 上电启动

NanoPC-T2 Uboot启动过程分析- 1 上电启动本文分析以NanoPC-T2平台为主。NanoPC-T2使用的是三星的S5P4418为主CPU。系统上电时,S5P4418 会将位于 0x3400_0000 上的 Internal ROM 代码映射到 0x0000_0000 上进行执行。该代码将 SD 卡上从 0x0000_0200 开始的数据复制到内部 RAM 中,目标位置为 0xFFFF

2016-07-29 10:21:41 1465 2

原创 Linux环境开发STM32,从环境到调试

最近因为某些原因,工作环境从windows向linux迁移了。原本在windows下开发STM32,现在要改用在linux上开发。    首先简单地描述一下软硬件开发环境。宿主机:    操作系统:CentOS7 x86_64 ( grome桌面版 )    IDE:Eclipse Luna    JLink驱动:JLink_Linux_V434a    工具链:G

2015-02-14 11:21:23 11041 4

原创 FreeRTOS代码剖析之5:链表管理list.c

链表是操作系统中常用的数据结构,其结构比较简单,因此在剖析FreeRTOS的内核时先从这里开始入手。    链表是由众多链表节点组成的,在FreeRTOS中,链表节点有两种定义,分别是xLIST_ITEM和xMINI_LIST_ITEM。这两种有什么区别呢?可以说,xMINI_LIST_ITEM是xLIST_ITEM的浓缩版。看看两者的定义。struct xLIST_ITEM{

2014-11-20 21:28:27 3165

原创 FreeRTOS代码剖析之4:内存管理Heap_4.c

FreeRTOS8.0.1内存管理的最后一个堆模型Heap_4,貌似是在这一个版本才有的。所以找到的说明几乎没有。代码的开头注释也只是简单地说了一下实现了pvPortMalloc()和vPortFree()两个函数,并且能够对回收的内存块进行合并,减少碎片的出现。(A sample implementation of pvPortMalloc() and vPortFree() that co

2014-08-19 22:33:39 9641 5

原创 FreeRTOS代码剖析之3:内存管理Heap_3.c

FreeRTOS8.0.1的第三个模型Heap_3,可以说是最容易理解的一个内存堆管理模型。因为在这个模型里,FreeRTOS直接将标准C库中的malloc()和free()进行加工打包。(Implementation of pvPortMalloc() and vPortFree() that relies on the compilers own malloc() and free() i

2014-08-18 19:59:20 4044

原创 FreeRTOS代码剖析之2:内存管理Heap_2.c

在FreeRTOS8.0.1这个版本中,一共有四个内存堆模型。这一次讲的就是第二个模型Heap_2.c。从一开始就可以看到注释中对Heap_2的模型解释:这是对pvPortMalloc()和vPortFree()的简单实现,除了可以分配内存之外,还可以对已分配的内存进行回收,但相邻空闲块不会进行合并,因此会造成一定的内存碎片。(A sample implementation of pvPort

2014-08-17 20:49:02 3954 3

原创 FreeRTOS代码剖析之1:内存管理Heap_1.c

内存管理是一个操作系统的重要组成部分之一,所有应用程序都离不开操作系统的内存管理。因此,在剖析FreeRTOS的内核代码之前,前对FreeRTOS的内存管理进行研究。    现在以FreeRTOS8.0.1进行剖析研究。参考资料为《Using the FreeRTOS Real Time Kernel-A Practical Guide opened》。    Heap_1.c的注释说明,

2014-08-16 23:58:06 5346 7

空空如也

空空如也

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

TA关注的人

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