<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[emerald0106的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/emerald0106</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; emerald0106]]></copyright><item><title><![CDATA[从零开发一个RTOS系列--loader篇]]></title><link>https://blog.youkuaiyun.com/emerald0106/article/details/85228388</link><guid>https://blog.youkuaiyun.com/emerald0106/article/details/85228388</guid><author>emerald0106</author><pubDate>Mon, 24 Dec 2018 08:43:43 +0800</pubDate><description><![CDATA[RTOS只是一个内核，要正常启动，和Linux的Uboot类似存在一个loader的模块，这个loader可以做的很专用，不考虑通用情况，只针对某一款特定的平台，特定的RTOS而编写。

下面这个GitHub上的代码库就是笔者简单修改的一个loader。

https://github.com/JeremyLi/bootloader

之前提到的这款RTOS是静态编译、链接的（可以通过-fPIC和...]]></description><category></category></item><item><title><![CDATA[从零开发一个RTOS系列--准备篇]]></title><link>https://blog.youkuaiyun.com/emerald0106/article/details/85218056</link><guid>https://blog.youkuaiyun.com/emerald0106/article/details/85218056</guid><author>emerald0106</author><pubDate>Sat, 22 Dec 2018 21:12:14 +0800</pubDate><description><![CDATA[
	工具准备：
	
（1）交叉编译器：

不同的开发板可能需要不同的交叉编译器，笔者之前使用的开发板型号好像是STM32F407VG-Discovery，记不太清了，目前开发板不在身边，不能真机调试，先说一些理论方面的内容。笔者选用的交叉编译器是arm-none-eabi-gcc、arm-none-eabi-gdb, 大家可以到这个地址下载最新版：https://developer.arm.com...]]></description><category></category></item><item><title><![CDATA[嵌入式基本开发流程梳理总结]]></title><link>https://blog.youkuaiyun.com/emerald0106/article/details/85218002</link><guid>https://blog.youkuaiyun.com/emerald0106/article/details/85218002</guid><author>emerald0106</author><pubDate>Sat, 22 Dec 2018 21:07:08 +0800</pubDate><description><![CDATA[嵌入式开发早在10年之前笔者就读本科时，就炒得火热的概念，当时说嵌入式开发将是得到大力发展的行业。一直到最近又有物联网IoT，智能硬件的发展，嵌入式开发再次被推向风口浪尖。下面我们就简单说一下究竟什么是嵌入式开发。

嵌入式开发，一般是指针对某个特定嵌入式系统的开发，嵌入式系统广义上可以认为是功能受限的计算机系统。由于是功能受限的计算机系统，所以一般都是专用的系统，而不像我们平时用的个人电脑（PC...]]></description><category></category></item><item><title><![CDATA[一个使用Ruby on Rails开发LBS网站的简单实例]]></title><link>https://blog.youkuaiyun.com/emerald0106/article/details/7865746</link><guid>https://blog.youkuaiyun.com/emerald0106/article/details/7865746</guid><author>emerald0106</author><pubDate>Tue, 14 Aug 2012 16:50:46 +0800</pubDate><description><![CDATA[一个使用Ruby on Rails开发LBS网站的简单实例


cheungmine

2011-7


这几天一直在学习使用Ruby on Rails(RoR)，想建立一个功能全面一点的LBS(Location Based Service)网站。但是对于我这个RoR的初学者（仅有几天时间）来说，毕竟太复杂了。因此本文试图简化原来的设计思路，抛弃一切权限管理，仅仅对数据表中的坐标位]]></description><category></category></item><item><title><![CDATA[剖析 Rails 3 MVC 中的数据传递]]></title><link>https://blog.youkuaiyun.com/emerald0106/article/details/7854251</link><guid>https://blog.youkuaiyun.com/emerald0106/article/details/7854251</guid><author>emerald0106</author><pubDate>Sat, 11 Aug 2012 11:15:50 +0800</pubDate><description><![CDATA[剖析 Rails 3 MVC 中的数据传递





林 洪祥, 软件工程师,
 IBM



简介： 本文分析了 Rails 3 的 MVC 架构，探讨总结了 Rails 3 的控制器与视图、控制器与模型、视图与布局以及多个视图之间的数据传输方法和技巧。假设您对 Ruby on Rails 有基本的了解，至少能够配置 Ruby on Rails 并运行类似 Hello Wo]]></description><category></category></item><item><title><![CDATA[可伸缩的高性能 Rails 应用程序开发和部署实践]]></title><link>https://blog.youkuaiyun.com/emerald0106/article/details/7854148</link><guid>https://blog.youkuaiyun.com/emerald0106/article/details/7854148</guid><author>emerald0106</author><pubDate>Sat, 11 Aug 2012 10:54:17 +0800</pubDate><description><![CDATA[可伸缩的高性能 Rails 应用程序开发和部署实践





叶 凯, 软件工程师, WSO2 Inc



简介： Ruby On Rails 框架在性能和可扩展性上，并没有让所有人信服，依然有很多的系统架构师和工程师对 Rails 是否适用于开发高负载高并发的 Web 应用持怀疑的态度。本文希望通过介绍开发高性能的 Rails 应用程序的一些比较好的具体实践，帮助 Rail]]></description><category></category></item><item><title><![CDATA[使用 Rails Active Resource 简化 web 应用程序之间的互操作性]]></title><link>https://blog.youkuaiyun.com/emerald0106/article/details/7853063</link><guid>https://blog.youkuaiyun.com/emerald0106/article/details/7853063</guid><author>emerald0106</author><pubDate>Fri, 10 Aug 2012 20:22:54 +0800</pubDate><description><![CDATA[使用 Rails Active Resource 简化 web 应用程序之间的互操作性

采用 RESTful 方法



Saideep Annadatha, 软件工程师, IBM



简介： 了解使用 Ruby on Rails 的 Active Resource 来实现和使用 web 服务的一种快速简便的方法。通过一种 RESTful 方法，Rails 帮助您简化您的]]></description><category></category></item><item><title><![CDATA[Ruby on Rails 发送邮件环境设置]]></title><link>https://blog.youkuaiyun.com/emerald0106/article/details/7848927</link><guid>https://blog.youkuaiyun.com/emerald0106/article/details/7848927</guid><author>emerald0106</author><pubDate>Thu, 09 Aug 2012 19:40:48 +0800</pubDate><description><![CDATA[运行环境:


ruby 1.8.6
rails 1.2.5
gem 1.0.1

这里用的是gmail的服务器,由于rails中的actionMailer不支持TLS（SSL）连接，但这却是Gmail SMTP服务器唯一的传输方式。网上已经有专门这个问题提供的plugin,下面总结一下配置的具体步骤：
1.安装插件:  打开cmd,进入rails项目的目录
输入 ruby sc]]></description><category></category></item><item><title><![CDATA[capistrano 部署rails]]></title><link>https://blog.youkuaiyun.com/emerald0106/article/details/7836490</link><guid>https://blog.youkuaiyun.com/emerald0106/article/details/7836490</guid><author>emerald0106</author><pubDate>Mon, 06 Aug 2012 19:01:21 +0800</pubDate><description><![CDATA[转自石锅拌饭，察看原文

部署网络应用服务是很麻烦的事情，安装程序，升级数据库schema，切换版本，重启服务。步骤越多，人工参与越多，越容易出问题。
Capistrano是ruby on rails提供的部署方案，原名叫SwitchTower，多好记的名字，结果和人重了，换成现在这个，估计是为了赌气才起成这样，反正我再也不能拼对 了。它集成了很多部署程序必须的步骤，借助ssh、版本管理系统]]></description><category></category></item><item><title><![CDATA[Ubuntu上Apache+Passenger部署实践]]></title><link>https://blog.youkuaiyun.com/emerald0106/article/details/7836436</link><guid>https://blog.youkuaiyun.com/emerald0106/article/details/7836436</guid><author>emerald0106</author><pubDate>Mon, 06 Aug 2012 18:34:23 +0800</pubDate><description><![CDATA[Ubuntu上Apache+Passenger部署实践


现在Rails官方推荐的最佳部署方式是Apache+Passenger的模式。此模式拥有及其强大的功能，能够自动增减集群进程的数量，对后续部署又很简单。难怪DHH在博客中对Passenger赞誉有加。

 

近期我在Ubuntu上部署了几个Rails网站，都是采用Apache+Passenger的模式。故此写下我的安装配置]]></description><category></category></item><item><title><![CDATA[Android NFC 开发实例]]></title><link>https://blog.youkuaiyun.com/emerald0106/article/details/7830709</link><guid>https://blog.youkuaiyun.com/emerald0106/article/details/7830709</guid><author>emerald0106</author><pubDate>Sat, 04 Aug 2012 19:04:55 +0800</pubDate><description><![CDATA[作者：裘德超






使用硬件：Google Nexus S，北京大学学生卡。(ps:笔者本想使用公交一卡通进行测试，发现手机不能正确识别)

手机操作系统：Android ICS 4.04。

开发时，笔者从Google Play Store上下载了NFC TagInfo软件进行对比学习。所以我们可以使用任意一张能被TagInfo软件正确识别的卡做测试。

在And]]></description><category></category></item><item><title><![CDATA[Android 的开源电话/通讯/IM聊天项目全集]]></title><link>https://blog.youkuaiyun.com/emerald0106/article/details/7829579</link><guid>https://blog.youkuaiyun.com/emerald0106/article/details/7829579</guid><author>emerald0106</author><pubDate>Sat, 04 Aug 2012 10:14:30 +0800</pubDate><description><![CDATA[一、Android的XMPP客户端 Beem

Beem 是一个运行于 Android 手机平台的 XMPP (jabber) 的客户端软件，兼容标准的 XMPP 服务器和服务，例如 Ejabberd, Openfire, Facebook, 和 Gmail). 支持 SASL, 代理(Socks4, Socks5, HTTP), DNS SRV, and chatting with a sp]]></description><category></category></item><item><title><![CDATA[android 视频通话 项目 源码]]></title><link>https://blog.youkuaiyun.com/emerald0106/article/details/7829567</link><guid>https://blog.youkuaiyun.com/emerald0106/article/details/7829567</guid><author>emerald0106</author><pubDate>Sat, 04 Aug 2012 10:11:07 +0800</pubDate><description><![CDATA[android 视频通话 项目 源码


2012-07-06 01:08 205人阅读 评论(0) 收藏 举报

项目正在进展中。。。
有兴趣的童鞋，加入我们。
 
关于视频通话的开源项目有哪些：

一、开源voip有哪些
SIPDroid、linphone、imsdroid
SIPDroid：纯java语言开发
Linphone：基于多个平台，但android下的bu]]></description><category></category></item><item><title><![CDATA[Ruby on Rails 的检验方法(Validation Helpers)大全 (转)]]></title><link>https://blog.youkuaiyun.com/emerald0106/article/details/7828653</link><guid>https://blog.youkuaiyun.com/emerald0106/article/details/7828653</guid><author>emerald0106</author><pubDate>Fri, 03 Aug 2012 20:23:39 +0800</pubDate><description><![CDATA[From Captain Zhan's Blog [原文链接]

可以自定义validate(), 这个方法在每次保存数据时都会被调用.
如:
def validate
 if name.blank? && email.blank?
  errors.add_to_base("You must specify a name or an email address")
 end
en]]></description><category></category></item><item><title><![CDATA[手把手学习Rails 文件上传(支持Rails2.3)]]></title><link>https://blog.youkuaiyun.com/emerald0106/article/details/7827652</link><guid>https://blog.youkuaiyun.com/emerald0106/article/details/7827652</guid><author>emerald0106</author><pubDate>Fri, 03 Aug 2012 16:12:21 +0800</pubDate><description><![CDATA[You may have a requirement in which you want your site visitors to upload a file on your server. Rails makes it very easy to handle this requirement. Now we will proceed with a simple and small Rails]]></description><category></category></item><item><title><![CDATA[android系统action大全]]></title><link>https://blog.youkuaiyun.com/emerald0106/article/details/7819668</link><guid>https://blog.youkuaiyun.com/emerald0106/article/details/7819668</guid><author>emerald0106</author><pubDate>Wed, 01 Aug 2012 18:12:52 +0800</pubDate><description><![CDATA[String ADD_SHORTCUT_ACTION 动作：在系统中添加一个快捷方式。. “android.intent.action.ADD_SHORTCUT”




　　String ALL_APPS_ACTION 动作：列举所有可用的应用。

　　输入：无。 “android.intent.action.ALL_APPS”

　　String ALTERNATIVE_CA]]></description><category></category></item><item><title><![CDATA[Android 广播大全 Intent Action 事件]]></title><link>https://blog.youkuaiyun.com/emerald0106/article/details/7819662</link><guid>https://blog.youkuaiyun.com/emerald0106/article/details/7819662</guid><author>emerald0106</author><pubDate>Wed, 01 Aug 2012 18:11:07 +0800</pubDate><description><![CDATA[Android 广播大全 Intent Action 事件

博客分类： 

Android
intent 



Intent.ACTION_AIRPLANE_MODE_CHANGED;

//关闭或打开飞行模式时的广播

 

Intent.ACTION_BATTERY_CHANGED;

//充电状态，或者电池的电量发生变化

//电池的充电状态、电荷级]]></description><category></category></item><item><title><![CDATA[android系统权限大全]]></title><link>https://blog.youkuaiyun.com/emerald0106/article/details/7819651</link><guid>https://blog.youkuaiyun.com/emerald0106/article/details/7819651</guid><author>emerald0106</author><pubDate>Wed, 01 Aug 2012 18:08:49 +0800</pubDate><description><![CDATA[android系统权限大全2011-12-27 19:02 38人阅读 评论(0) 收藏 举报 android.permission.ACCESS_CHECKIN_PROPERTIES 允许读写访问”properties”表在checkin数据库中，改值可以修改上传( Allows read/write access to the “properties” table in the checkin]]></description><category></category></item><item><title><![CDATA[Android 系统广播大全]]></title><link>https://blog.youkuaiyun.com/emerald0106/article/details/7819642</link><guid>https://blog.youkuaiyun.com/emerald0106/article/details/7819642</guid><author>emerald0106</author><pubDate>Wed, 01 Aug 2012 18:07:01 +0800</pubDate><description><![CDATA[Intent.ACTION_AIRPLANE_MODE_CHANGED;

//关闭或打开飞行模式时的广播



Intent.ACTION_BATTERY_CHANGED;

//充电状态，或者电池的电量发生变化

//电池的充电状态、电荷级别改变，不能通过组建声明接收这个广播，只有通过Context.registerReceiver()注册



Intent.AC]]></description><category></category></item><item><title><![CDATA[Android入门（9）AudioRecord和AudioTrack类的使用]]></title><link>https://blog.youkuaiyun.com/emerald0106/article/details/7816290</link><guid>https://blog.youkuaiyun.com/emerald0106/article/details/7816290</guid><author>emerald0106</author><pubDate>Tue, 31 Jul 2012 22:49:50 +0800</pubDate><description><![CDATA[Android入门（9）AudioRecord和AudioTrack类的使用



    AudioRecord和AudioTrack类是Android获取和播放音频流的重要类，放置在android.media包中。与该包中的MediaRecorder和MediaPlayer类不同，AudioRecord和AudioTrack类在获取和播放音频数据流时无需通过文件保存和文件读取，可以动态]]></description><category></category></item></channel></rss>