本文主要是了解ROS的系统架构.文件夹结构以及工作所需的核心文件. ROS系统架构主要被设计和划分为三部分,每一部分代表一个层级的概念:文件系统级(The filesystem level).计算图级(The computation graph level).开源社区级(The community level). 1 理解ROS文件系统级 与其他操作系统类似,一个ROS程序的不同组件要被放在不同的文件夹下.这些文件夹是根据功能的不同来对文件进行组织的: 功能包(Package):功能包是ROS中…
参考资料: 1. <Windows Internals> 2. http://bestcbooks.com 3. Windows Drive Kit 4. Microsoft Windows SDK 5. WDK下载地址 6. Windows内核模式和用户模式 知识点: 1. 用户模式下的四种基本进程类型: ● Fixed (or hardwired) system support processes, Such as the logon process & the session m…
1. 2003.10,Andy Rubin创办Android公司.2005.8,Google收购之,并于2008年推出Android系统第一个版本. 2. ①Linux Kernel:基于Linux 2.6. Display Driver:基于Linux的帧缓冲(Frame Buffer)驱动. Camera Driver:常用的基于Linux的v412(Video for Linux)的驱动.   Bluetooth Driver:基于IEEE 802.15.1标准的无线传输技术. Flash…
目录 Spark学习笔记0--简单了解和技术架构 什么是Spark 技术架构和软件栈 Spark Core Spark SQL Spark Streaming MLlib GraphX 集群管理器 受众 起源和发展 Spark学习笔记0--简单了解和技术架构 笔记摘抄自 [美] Holden Karau 等著的<Spark快速大数据分析> 什么是Spark Spark 是一个用来实现快速而通用的集群计算的平台. 扩展了广泛使用的MapReduce 计算模型 能够在内存中进行计算 一个统一的框架…
驱动开发学习笔记. 0.07 Uboot链接地址 加载地址 和 链接脚本地址 最近重新看了乾龙_Heron的<ARM 上电启动及 Uboot 代码分析>(下简称<代码分析>) 文档里写道: Uboot.lds文件中起始地址是0x00,但是config.mk中的TEXT_BASE是0x57e00000,但是生成的uboot反汇编文件中,为什么start.s的第一条指令地址也是0x57e00000?不应该是0x00么?因为start.s的加载地址和运行地址都是0x00啊!? 答:Ubo…
放着好好的成熟的AJS 3.19不学,为什么要去碰乳臭未干的AJS 4.2? 4.2全线基础学习请点击[直达] 4.3及更高版本的补充学习请关注我的博客. ArcGIS API for JavaScript 4.2概述 AJS 4.2,即ArcGIS API for JavaScript 4.2,是美国ESRI公司针对WebGIS市场推出的.利用JavaScript和Dojo开发的一款产品,它在2016年12月发布.而AJS 4.0 beta则在一年前就发布了. 关于AJS3和AJS4选择的问题…
boost 学习笔记 0: 安装环境 最完整的教程 http://einverne.github.io/post/2015/12/boost-learning-note-0.html Linux 自动安装boost sudo apt-get install libboost-all-dev Linux 手动安装boost 下载 boost_1_60_0.tar.bz2 解压 tar –bzip2 -xf /path/to/boost_1_60_0.tar.bz2 一部分组件(Header-Onl…
JavaScript学习笔记[0] 使用的是廖雪峰JavaScript教程. 数据类型 Number 表示数字,不区分浮点整形. === 比较时不转化数据类型. == 反之. NaN与任何值都不想等,包括自己.只能用isNaN() isNaN(NaN); //true 浮点数计算有误差.任何语言都是这样.只能通过计算差值来确定. 1 / 3 === (1 - 2 / 3) //false Math.abs(1 / 3 - (1 - 2 / 3)) < 0.0000001 //true null…
驱动开发读书笔记. 0.02 基于EASYARM-IMX283 怎么烧写自己裁剪的linux内核?(非所有arm9通用) 手上有一块tq2440,但是不知道什么原因,没有办法烧boot进norflash或者nandflash:只好用另一块arm9(i.mx283a)来继续学习: 从开发教程上面可知,烧写uboot和Linux是通过各种批处理脚本和exe程序来执行的,称之为固件烧写,然而并没有需要我们选择uboot路径.Linux内核和文件系统的地方.这样的话是不是意味着只能烧写官方默认提供的文件…
我的邮箱地址:zytrenren@163.com欢迎大家交流学习纠错! 一名linux爱好者,记录构建Linux From Scratch的过程 经博客园-骏马金龙前辈介绍,开始接触学习lfs,用博客记录学习笔记,如有写的不恰当的地方,望多多指正.笔记中只是记录一些问题和书中表述不清晰的内容的处理办法以及我的解决思路,仅做参考. 要实际构建lfs请结合lfs官方的书籍操作 一.lfs系列概述 1.lfs:Linux From Scratch(LFS)是一个项目,为您提供完全从源代码构建自己的自定…
驱动开发读书笔记. 0.04  linux 2.6 platform device register 平台设备注册  1/2 共2篇下面这段摘自 linux源码里面的文档 : Documentation/driver-model/platform.txt Device Enumeration 82 ~~~~~~~~~~~~~~~~~~ 83 As a rule, platform specific (and often board-specific) setup code will 84 reg…
我的邮箱地址:zytrenren@163.com欢迎大家交流学习纠错! 大概思路: lfs(系统)+xorg(驱动)+gnome(桌面组件) 链接: lfs(systemd版本)学习笔记系列:https://www.cnblogs.com/renren-study-notes/p/10385401.html blfs(systemd版本)书籍内容的学习笔记: 总页:https://www.cnblogs.com/renren-study-notes/p/10385413.html 前几章节的脚本…
整体来说,一个公司业务系统的演进流程基本都是从单体应用到多应用.在单体应用时,不同业务模块相互调用直接在本地JVM进程内就可以完成,而变为多个应用时,相互之间进行通信就不能简单的进行本地调用了,因为不同业务模块部署到了不同的JVM进程里面,更常见的是部署到了不同的机器,这时候一个高效/稳定的RPC远程调用框架就变得非常重要. Dubbo是阿里巴巴开发的一个开源的高性能的远程服务调用框架,致力于提供高性能和透明化的RPC远程调用服务解决方案.作为阿里巴巴SOA服务化治理方案的核心框架,目前它已进入…
Ambari是hadoop分布式集群配置管理工具,是由hortonworks主导的开源项目.它已经成为apache基金会的孵化器项目,已经成为hadoop运维系统中的得力助手,引起了业界和学术界的关注.现在我们将深入学习Ambari原理及其架构. Ambari架构采用的是Server/Client的模式,主要由两部分组成:ambari-agent和ambari-server.ambari依赖其它已经成熟的工具,例如其ambari-server 就依赖python,而ambari-agent还同时…
1.Android背景与当前的状况 Android系统是由Andy Rubin创建的,后来被Google收购了:最早的版本是:Android 1.1版本 而现在最新的版本是今年5.28,Google I/O大会上推出的Android M,有趣的是Android系统的命名都是以点心来命名的,下述表是15个Android版本名称,对应API号以及发布时间! 看完上面的信息,我们可能有这样的一个疑问: 那么多的系统版本,我们开发的时候要针对哪个版本进行开发? 这就是作为一个Android必须面对的An…
驱动开发读书笔记. 0.06  嵌入式linux视频开发之预备知识 由于毕业设计选择了嵌入式linux视频开发相关的项目,于是找了相关的资料,下面是一下预备知识 UVC : UVC,全称为:USB video class 或USB video device class.是Microsoft与另外几家设备厂商联合推出的为USB视频捕获设备定义的协议标准,目前已成为USB org标准之一. UVC linux driver: UVC linux 驱动 需要在编译内核的时候选上 配置内核 Device…
驱动开发读书笔记. 0.05 linux 2.6 platform device register 平台设备注册 2/2 共2篇 下面这段摘自 linux源码里面的文档 : 内核版本2.6.22Documentation/driver-model/platform.txt找到一篇译文:http://blog.csdn.net/yili_xie/article/details/5193609 Device Enumeration 82 ~~~~~~~~~~~~~~~~~~ 83 As a rule…
驱动开发读书笔记. 0.01 配置arm-linux-gcc 交叉编译器 什么是gcc: 就像windows上的VS 工具,用来编译代码,具体请自己搜索相关资料 怎么用PC机的gcc 和 arm-linux-gcc工具都是在PC上运行,有什么不一样? PC上的gcc生成的文件是给PC机执行的,arm-linux-gcc生成的文件是给arm板上的linux执行的. arm-linux-gcc 版本 :我还没搞清楚版本不用会导致什么不一样 网上的建议是使用现成的arm-linux-gcc编译器 自己…
最近阅读了<SRE Google运维解密>的第23章,有一些感触,记录一下. 日常工作中,我们经常需要一些服务分布式的运行.跨区域如跨城.跨洲部署运行分布式系统往往是容易的,但是如何保证各系统间状态的一致是困难的.如何保证服务的高可靠.高可用,就是服务提供的数据是准确的,关键在于一些状态的传递,这个时候就需要利用分布式共识系统来维护相关状态,确保大家拿到的状态信息最终是一致的. 要想实现一个分布式共识系统,需要采用一些经过理论验证的方案,最基础的就是CAP理论. CAP 理论 CAP原则是指对…
Ext JS 6 By Example Ext JS Essentials Learning Ext JS - Fourth Edition Ext JS 6: Getting Started http://blog.csdn.net/sushengmiyan/article/details/38331347 http://docs.sencha.com/ http://www.extjs-tutorial.com/ 地图应用 https://github.com/geoext 翻译文档 htt…
Ext 类 Ext 是一个全局单例的对象,在 Sencha library 中它封装了所有的类和许多实用的方法.许多常用的函数都定义在 Ext 对象里.它还提供了像其他类中一些频繁使用的方法的快速调用. define 方法 你可以用这个方法定义或者重写一个类. 这个方法有三个参数,如以下代码所示. 在这里 name 参数是你要定义的类名,data 参数是应用于这个类的属性,callback 是可选参数,这个函数将会在这个类被创建后调用: Ext.define(name,data, callbac…
1. Ext.application 应用程序入口点 2. Ext.onReady() 页面加载完成后触发动作 3. Ext.define() 4. Ext.data.proxy.Proxy 5. Ext的组合属性-mixins 6. Ext.create() 7. Ext.ComponentQuery.refs: 8. Init: function(){} 9. Ext.Class.alias 10. Ext.AbstractComponent -> xtype 11. this.callPa…
1.下载ExtJS 6 下面是Ext JS 6正式版的GPL版本下载地址 https://www.sencha.com/legal/gpl/ 2.下载sencha cmd 安装完成后,命令行运行出现以下信息为正常 ---------------------------------------------------------------------- 官方安装指导 http://docs.sencha.com/ide_plugins/guides/jetbrains_ide_plugin.ht…
这是17年暑假学习Linux汇编语言的笔记记录,参考书目为清华大学出版社 Jeff Duntemann著 梁晓辉译<汇编语言基于Linux环境>的书,喜欢看原版书的同学可以看<Assembly Language Step-By-Setp:Programming with Linux 3rd Edition>,非常感谢该书的作者和译者,谢谢你们提供了这么好的学习材料. 汇编语言作为编程语言,是任何一位想在计算机科学与技术领域发展的人必须要掌握的:汇编技术,是任何一位想在计算机科学与技…
1.前言 本文介绍异常相关内容,包括异常类型,异常进入,异常返回,异常层次结构,异常的路由等 2.  RESET ARMV8体系结构支持两种类型的RESET Cold reset:Reset PE所有的逻辑,包括集成的debug功能 Warm reset:Reset PE所有的逻辑,不包括集成的debug功能 注:ARMV8也支持外部debug reset Reset时pe进入最高的异常级别 运行状态 (1)Reset后最高异常级别可以选用任何一种运行状态 (2)cold reset由输入信号配…
1       ExtJS入门 1.1     支持所有主流浏览器 调试推荐:chrome.Safari.Firefox 1.2     推荐目录结构 - appname (包含所有程序代码,是根目录) - app (包含所有类,按包的规则命名子目录) - namespace - Class1.js - Class2.js - ... - extjs (ExtJS 4 SDK) - resources (CSS图片等资源文件) - css - images - ... - app.js (程序入…
0x00 概述 本文介绍了Kafka的创建背景,设计目标,使用消息系统的优势以及目前流行的消息系统对比.并介绍了Kafka的架构,Producer消息路由,Consumer Group以及由其实现的不同消息分发方式,Topic & Partition,最后介绍了Kafka Consumer为何使用pull模式以及Kafka提供的三种delivery guarantee. Kafka是由LinkedIn开发并开源的分布式消息系统,因其分布式及高吞吐率而被广泛使用,现已与Cloudera Hadoo…