<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Elsa's Blog]]></title><description><![CDATA[Professional & Nice]]></description><link>https://blog.youkuaiyun.com/Elsa_Rong</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Elsa_Rong]]></copyright><item><title><![CDATA[李飞飞：如何教计算机理解图片]]></title><link>https://blog.youkuaiyun.com/Elsa_Rong/article/details/78948177</link><guid>https://blog.youkuaiyun.com/Elsa_Rong/article/details/78948177</guid><author>Elsa_Rong</author><pubDate>Mon, 01 Jan 2018 23:27:12 +0800</pubDate><description><![CDATA[2016年早期读论文阶段，我第一次接触Artificial Intelligence，当时只觉得这个词汇，真难拼，听起来逼格蛮高的，cool；2017年，人工智能已经成了媒体年度新词，甚至带动了一票AI概念股涨起来，比如当前时间（2017/12/29 15:00:00 北京时间）PE值已经在365.29左右的科大讯飞，还有相对理性的PE值43.59的海康。2017年4、5月份假期，又听了Andrew]]></description><category></category></item><item><title><![CDATA[Notes：《程序员的自我修养——链接、装载与库》]]></title><link>https://blog.youkuaiyun.com/Elsa_Rong/article/details/78838213</link><guid>https://blog.youkuaiyun.com/Elsa_Rong/article/details/78838213</guid><author>Elsa_Rong</author><pubDate>Tue, 19 Dec 2017 00:00:58 +0800</pubDate><description><![CDATA[记录下每章的知识点，便于以后对着这份知识图谱，复习和重组。温故而知新万变不离其宗掌握硬件中的核心部件：CPU、内存、I/O控制芯片 
了解CPU核心频率提升过程中硬件构架的演进：从Bus，到PCI/ISA，再到PCI Express站得高，望得远系统软件分为：平台性的和程序开发性的 
平台性系统软件：操作系统内核、驱动、运行库、系统工具 
程序开发性系统软件：编译器、汇编器、链接器软件体系结构层与层]]></description><category></category></item><item><title><![CDATA[CS107-Lecture 7-Note]]></title><link>https://blog.youkuaiyun.com/Elsa_Rong/article/details/74967449</link><guid>https://blog.youkuaiyun.com/Elsa_Rong/article/details/74967449</guid><author>Elsa_Rong</author><pubDate>Tue, 11 Jul 2017 14:33:24 +0800</pubDate><description><![CDATA[距离上一次听CS107已经有一个月了，非常尴尬。最近花一周左右时间粗糙看完了《Linux内核设计与实现》，compile custom Linux kernel，又复习了之前课程的笔记，和CS107结合起来，感觉消化了更多。比如书中介绍的（1）内核编程的特点之inline；（2）内核数据结构中对struct、list的使用；（3）malloc、realloc使用时的注意事项，本质上都是CS107中a]]></description><category></category></item><item><title><![CDATA[Mac OS X下（Ubuntu虚拟机）编译Linux内核]]></title><link>https://blog.youkuaiyun.com/Elsa_Rong/article/details/74639069</link><guid>https://blog.youkuaiyun.com/Elsa_Rong/article/details/74639069</guid><author>Elsa_Rong</author><pubDate>Fri, 07 Jul 2017 11:16:07 +0800</pubDate><description><![CDATA[用了十天时间看完《Linux内核设计与实现》，想在Mac上编译Linux内核实践下。编译过程遇到了不少问题，根本原因还是对内核的编译、安装和启动的理解不够。流程整理1. 安装VMware和Ubuntu(1) 我的配置： Mac OS X 10.10.5，VMware Fusion 8，Ubuntu 16.04.2安装时我给虚拟机划分了50G磁盘空间，其中30G给/，1G给swap，2G给/boot，]]></description><category></category></item><item><title><![CDATA[CS107-Lecture 6-Note]]></title><link>https://blog.youkuaiyun.com/Elsa_Rong/article/details/72821003</link><guid>https://blog.youkuaiyun.com/Elsa_Rong/article/details/72821003</guid><author>Elsa_Rong</author><pubDate>Wed, 31 May 2017 16:56:34 +0800</pubDate><description><![CDATA[int型StackLecture 5讲到用C的语法实现“栈”，并给出了StackNew()的实现。
StructNew通过传入结构体s的地址，将某个12字节的内容未知的内存块用来在逻辑上表示一个深度为0的栈：  Jerry: and take it from a 12-byte block of question marks to be logically representing a stack]]></description><category></category></item><item><title><![CDATA[CS107-Lecture 5-Note]]></title><link>https://blog.youkuaiyun.com/Elsa_Rong/article/details/71083945</link><guid>https://blog.youkuaiyun.com/Elsa_Rong/article/details/71083945</guid><author>Elsa_Rong</author><pubDate>Tue, 02 May 2017 18:12:53 +0800</pubDate><description><![CDATA[lsearch在Lecture 4和5介绍lsearch的设计过程中，我有一些小感悟：程序设计的问题有很多种答案，优秀的答案不是大笔一挥就跃然纸上的，而是不断地思考完善，不断地根据需求（比如采用的语言，针对的数据类型）优化得到的。言归正传，继续上次课的内容，从针对specific数据类型的lsearch优化得到generic的lsearch，再优化得到generic lsearch中的自定义的com]]></description><category></category></item><item><title><![CDATA[粒子群优化算法（一）：算法性能测试函数]]></title><link>https://blog.youkuaiyun.com/Elsa_Rong/article/details/68923333</link><guid>https://blog.youkuaiyun.com/Elsa_Rong/article/details/68923333</guid><author>Elsa_Rong</author><pubDate>Fri, 31 Mar 2017 11:36:20 +0800</pubDate><description><![CDATA[Rastrigin Function数学优化问题需要一些函数测试算法性能，例如Ras函数测试粒子群优化算法。Ras函数定义：f(x⃗ )=An+∑i=1n[x2i−cos(2πxi)]f(\vec{x})=An+ \sum_{i=1}^{n}[x_{i}^{2}-cos(2\pi x_{i})]这里的x⃗ \vec{x}是矢量，所以这是一个有维度的函数。Wikipedia: Rastrigin fu]]></description><category></category></item><item><title><![CDATA[CS107-Assignment 1]]></title><link>https://blog.youkuaiyun.com/Elsa_Rong/article/details/61417666</link><guid>https://blog.youkuaiyun.com/Elsa_Rong/article/details/61417666</guid><author>Elsa_Rong</author><pubDate>Sat, 11 Mar 2017 15:03:36 +0800</pubDate><description><![CDATA[Random Sentence Generator目瞪狗呆，Assignment 1竟然以介绍Random Sentence Generator开篇。Random Sentence Generator是一个句子随机生成器，和我小时候玩的中文组句的游戏一样，大家做些小卡片，一个人负责写主语，一个人负责写谓语，还有人负责定语、宾语、状语、补语……然后随机的从卡片里抽出主+谓+宾+定+状+补……组成一个句]]></description><category></category></item><item><title><![CDATA[CS107-Lecture 4-Note]]></title><link>https://blog.youkuaiyun.com/Elsa_Rong/article/details/60879215</link><guid>https://blog.youkuaiyun.com/Elsa_Rong/article/details/60879215</guid><author>Elsa_Rong</author><pubDate>Wed, 08 Mar 2017 19:09:17 +0800</pubDate><description><![CDATA[swap接上文，在swap函数中，参数ap和bp用来寻址到内存某两处空间，对空间里的值进行了交换。swap过程的本质，就是交换两处地址中存放的位模式，而且隐式地知道交换的字节大小。如果想让swap具有通用性，交换任意大小的，任意类型的量，可以使用通用类型void *，如Program. 1 返回通用的void * 类型：Program. 1. 返回通用的void*类型void* swap(void]]></description><category></category></item><item><title><![CDATA[CS107-Lecture 3-Note]]></title><link>https://blog.youkuaiyun.com/Elsa_Rong/article/details/60750648</link><guid>https://blog.youkuaiyun.com/Elsa_Rong/article/details/60750648</guid><author>Elsa_Rong</author><pubDate>Tue, 07 Mar 2017 09:53:39 +0800</pubDate><description><![CDATA[第三次课继续讲内存管理，介绍了double、array，struct，&，*，以及大小端模式。Jerry会用很直观小方框图画出出内存管理图。高级语言里有很多模板，例如二分搜索、线形搜索、归并排序、快速排序等等，当你理解了内存管理的本质，就可以自己实现这些内存管理的范式。double“Whatever bit pattern happened to reside there before is now]]></description><category></category></item><item><title><![CDATA[粒子群优化算法]]></title><link>https://blog.youkuaiyun.com/Elsa_Rong/article/details/56479413</link><guid>https://blog.youkuaiyun.com/Elsa_Rong/article/details/56479413</guid><author>Elsa_Rong</author><pubDate>Wed, 22 Feb 2017 09:34:13 +0800</pubDate><description><![CDATA[前言：学习算法的第一步，不是理解“什么是算法？”这类对我这种凡人来说飘渺的哲学问题，而是拿出一个例子，在纸上演算演算，再到xcode上敲几行代码，调出结果。大家都在介绍粒子群，都在说“所有鸟都不知道食物在哪里，但是知道距离食物还有多远”，为啥就没有人从最简单的二元三次方程求解的思路讲起，介绍粒子群算法，不过是一种求最大最小值的“解题公式”。因为卡在了粒子群优化，导致这两天里论文进度为0，今日需得牟足]]></description><category></category></item><item><title><![CDATA[怎样利用好异常处理机制？]]></title><link>https://blog.youkuaiyun.com/Elsa_Rong/article/details/52666214</link><guid>https://blog.youkuaiyun.com/Elsa_Rong/article/details/52666214</guid><author>Elsa_Rong</author><pubDate>Mon, 26 Sep 2016 01:55:18 +0800</pubDate><description><![CDATA[前言： 写了两年的遇到异常就随意try-catch－finally或者线程、函数自行崩溃的“自杀式软件”，是时候摒弃这种信马由缰Coding，随缘Debug的编程方式，用更认真的态度来设计程序了。Java，Python等高级语言，提供了异常处理机制和丰富的异常类给开发者，其实也是凌空架出一把双刃剑。无知的开发人员（研究生阶段的我…）利用异常处理机制，恣意捕获本应由良好的程序逻辑，合理的代码结构围追堵]]></description><category></category></item><item><title><![CDATA[嵌入式系统调试（一）]]></title><link>https://blog.youkuaiyun.com/Elsa_Rong/article/details/52505120</link><guid>https://blog.youkuaiyun.com/Elsa_Rong/article/details/52505120</guid><author>Elsa_Rong</author><pubDate>Sun, 11 Sep 2016 18:05:41 +0800</pubDate><description><![CDATA[前言： Android开发时，有了adb，就能在PC Shell或者Eclispe Debug窗口看到调试信息从而定位Bug。Android系统提供的调试手段很强大，Linux也是，但是对没有移植这些成熟系统的开发板来说，实现嵌入式系统的调试，从工具到方式，都需要自己动手搭建。一套调试环境包括：
上位机软件：比如串口调试助手，secureCRT
调试接口：比如UART，SPI， I2C
调试信息”传]]></description><category></category></item><item><title><![CDATA[RobotFramework/PythonRemoteServer]]></title><link>https://blog.youkuaiyun.com/Elsa_Rong/article/details/52455240</link><guid>https://blog.youkuaiyun.com/Elsa_Rong/article/details/52455240</guid><author>Elsa_Rong</author><pubDate>Wed, 07 Sep 2016 00:32:51 +0800</pubDate><description><![CDATA[前言： RobotFramework是一个很好用的自动化测试框架。测试框架本身是和测试功能无关的，它只是提供了测试库、测试用例、测试报告的接口和界面。使用的时候，将需要的测试库（来自第三方或者自定义）导入，再将遵循其格式输入的测试用例（可以是txt形式，也可以根据RF界面提示输入）导入，最后RF就会将运行结果以标准的格式输出，返回Pass or Fail。但是RF属于一个Windows本地软件，如果]]></description><category></category></item><item><title><![CDATA[Unable to get debug signature key]]></title><link>https://blog.youkuaiyun.com/Elsa_Rong/article/details/52455221</link><guid>https://blog.youkuaiyun.com/Elsa_Rong/article/details/52455221</guid><author>Elsa_Rong</author><pubDate>Wed, 07 Sep 2016 00:17:28 +0800</pubDate><description><![CDATA[问题问题原因就是手贱改变了adt的路径，导致adt中的debug工具相关也找不到了。要么重新配置adt路径，要么在Windows->Preference->Android->Build，在编译这块修改下Build配置。当然第二种方式鬼知道adt path不配置好将来会出什么新问题。解决方法Default debug keystore是自动生成的，改不了。如果用第二种方法，可以改Custom debu]]></description><category></category></item><item><title><![CDATA[Android和RTOS]]></title><link>https://blog.youkuaiyun.com/Elsa_Rong/article/details/52443820</link><guid>https://blog.youkuaiyun.com/Elsa_Rong/article/details/52443820</guid><author>Elsa_Rong</author><pubDate>Mon, 05 Sep 2016 21:25:02 +0800</pubDate><description><![CDATA[前言：研究生做了两年Android应用，实习时转了嵌入式应用软件开发，拿着一块移植了RTOS的设备学习。入门了才发现，两者都是开源、稳定、经历众多设备厂商打磨的优秀操作系统，根据以下几点对比学习。
通用操作系统和实时操作系统
 - 
双系统学得越多，发现自己知道的越少。两个操作系统其实经常一起应用：Android手机的双MCU
AP(Application Processor)是ARM架构搭载And]]></description><category></category></item><item><title><![CDATA[Linux学习笔记（一）：指令]]></title><link>https://blog.youkuaiyun.com/Elsa_Rong/article/details/52436730</link><guid>https://blog.youkuaiyun.com/Elsa_Rong/article/details/52436730</guid><author>Elsa_Rong</author><pubDate>Mon, 05 Sep 2016 01:02:20 +0800</pubDate><description><![CDATA[前言：”Obama snubbed?”今日学习英语，被CNN首页的大标题酸到了蛤蛤，因为接机时只有奥观海没有red-carpet stairs，美媒们反复抱怨这个welcome实在是太frosty而且inauspicious，而且很不友好地介绍接下来的conversation是the rancour continue。但是official有力地回应说”This is our airport, thi]]></description><category></category></item><item><title><![CDATA[Android ListView和RecyclerView常见问题]]></title><link>https://blog.youkuaiyun.com/Elsa_Rong/article/details/52352994</link><guid>https://blog.youkuaiyun.com/Elsa_Rong/article/details/52352994</guid><author>Elsa_Rong</author><pubDate>Mon, 29 Aug 2016 16:34:00 +0800</pubDate><description><![CDATA[前言：ListView和RecyclerView基本用法很简单，即三要素：（1）控件（界面）；（2）数据源；（3）适配器。但基本控件无法满足需求只能定制时，遇到一些问题，总结一下。
性能优化
滑动时数据加载混乱
nofityDataSetChanged不起作用
性能优化性能优化，大多是在getView()方法中采用内部类ViewHolder，保存已经加载过的布局convertView和控件实例如Te]]></description><category></category></item><item><title><![CDATA[Git 学习（一）：Git及相关常识]]></title><link>https://blog.youkuaiyun.com/Elsa_Rong/article/details/51014106</link><guid>https://blog.youkuaiyun.com/Elsa_Rong/article/details/51014106</guid><author>Elsa_Rong</author><pubDate>Wed, 30 Mar 2016 14:20:38 +0800</pubDate><description><![CDATA[前言：《Git学习（一）（二）（三）》分别介绍git，git相关常识和git安装步骤Git？
一个开源控制系统，做分布式版本管理的软件
为了帮助管理Linux内核开发而开发的
本地配置好remote 链接和用户信息（git的识别方式是用户名+邮箱）之后，将提交过的代码push到远程仓库，或者将远程仓库的代码fetch到本地
SSH (Security Shell)？
专为远程登录和其它网络服务提供安]]></description><category></category></item><item><title><![CDATA[简单的Android SQLite应用设计框架]]></title><link>https://blog.youkuaiyun.com/Elsa_Rong/article/details/50748312</link><guid>https://blog.youkuaiyun.com/Elsa_Rong/article/details/50748312</guid><author>Elsa_Rong</author><pubDate>Fri, 26 Feb 2016 11:12:05 +0800</pubDate><description><![CDATA[前言：最近有时间，重构了CRZ第一版代码的数据库部分。画了几张自己能看懂的软件结构图Mark。数据结构采用实体类－服务类－数据库管理类方式：数据加载采用内存缓存－本地数据库方式：应用启动时的数据加载方式：]]></description><category></category></item></channel></rss>