<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[linux内核探索]]></title><description><![CDATA[永远的，引人入胜的linux内核]]></description><link>https://blog.youkuaiyun.com/wfing</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; wfing]]></copyright><item><title><![CDATA[社区分享 | 从零开始学习 TinyML（二）]]></title><link>https://blog.youkuaiyun.com/wfing/article/details/107183870</link><guid>https://blog.youkuaiyun.com/wfing/article/details/107183870</guid><author>wfing</author><pubDate>Tue, 07 Jul 2020 16:17:47 +0800</pubDate><description><![CDATA[我们在上周的社区分享栏目中介绍了社区分享 | 从零开始学习 TinyML（一），本周我们将继续学习。



Hello World — 梦开始的地方(中)

在前面的准备工作中，我们完成了模型训练，并且将模型的二进制格式转化成为 C++ 可以识别的数组。但是，这仅仅是基于微控制器项目前面的一小步。后续还有许多工作要做。



项目中的代码也是完全基于 C++ 11 的标准版来开发的，避免了复杂的逻辑。这份代码也可以当作 C++ 模板进行开发。但是不要一提到 C++ 就特别怕，在这一篇文章会用已有的代码...]]></description><category></category></item><item><title><![CDATA[社区分享 | 从零开始学习 TinyML（一）]]></title><link>https://blog.youkuaiyun.com/wfing/article/details/106995562</link><guid>https://blog.youkuaiyun.com/wfing/article/details/106995562</guid><author>wfing</author><pubDate>Sun, 28 Jun 2020 11:34:56 +0800</pubDate><description><![CDATA[TinyML 简介

1. 概要

Pete Warden 与Daniel Situnayake 合著了一本介绍在 Arduino 和超低功耗微控制器上如何运行 ML 的书，TinyML：Machine Learning with TensorFlow Lite on Arduino and Ultra-Low-Power Microcontrollers，这本书由 O’Reilly 于 2019 年 12 月 13 号出版。





我作为国内 IoT 和 ML 两个方向的 GDE，对 AI 在嵌...]]></description><category></category></item><item><title><![CDATA[TensorFlow GPU在ubuntu 18.04上安装的注意事项]]></title><link>https://blog.youkuaiyun.com/wfing/article/details/82907948</link><guid>https://blog.youkuaiyun.com/wfing/article/details/82907948</guid><author>wfing</author><pubDate>Sun, 30 Sep 2018 12:09:32 +0800</pubDate><description><![CDATA[虽然说TensorFlow到现在已经发布好几年了。但是在ubuntu上用带GPU的TensorFlow，我认为一直是个灾难。而且这个灾难仍将持续。。。
这个话题，相当简单了，只是配置一下环境而己。但是N多人在上面痛不欲生，我还是写出来吧。有问题尽管给我留言。
自己买的笔记本是thinkpad P50的工作站，内置M2000M的显卡，操作系统为ubuntu，可以用做GPU加速来训练模型。
麻烦是，T...]]></description><category></category></item><item><title><![CDATA[邀请函 | Google 开发者物联网创新沙龙]]></title><link>https://blog.youkuaiyun.com/wfing/article/details/78971682</link><guid>https://blog.youkuaiyun.com/wfing/article/details/78971682</guid><author>wfing</author><pubDate>Thu, 04 Jan 2018 15:44:59 +0800</pubDate><description><![CDATA[文章来源“If you can build an app, you can build a device. ” 打造一款物联网智能设备就像开发一款 APP 一样简单?  使用 Google 的 Android Things 就可以帮您实现这个梦想！在上个月结束的 GDD 大会上，Google 最新的智能化操作系统 Android Things 也和中国的开发者见面了。在大会期间不仅有专门介绍 And]]></description><category></category></item><item><title><![CDATA[Android Things在 #io17]]></title><link>https://blog.youkuaiyun.com/wfing/article/details/72808612</link><guid>https://blog.youkuaiyun.com/wfing/article/details/72808612</guid><author>wfing</author><pubDate>Tue, 30 May 2017 09:57:30 +0800</pubDate><description><![CDATA[文｜ 谷歌IoT开发技术专家 (GDE) 王玉成 (York Wang)Google IO 2017圆满结束了。这次大会上，聊到了Android生态系统的一系列变化，聊到了人工智能，聊到了增强现实，聊到了机器学习。Keynote中也只是简单的提到了Android Things的发布，但是Android Things相关的Session却在大会上完全铺开了。session的亮点今年的IO大会，为我们带]]></description><category></category></item><item><title><![CDATA[Android Things 专题6 完整的栗子：运用TensorFlow解析图像]]></title><link>https://blog.youkuaiyun.com/wfing/article/details/64934328</link><guid>https://blog.youkuaiyun.com/wfing/article/details/64934328</guid><author>wfing</author><pubDate>Wed, 22 Mar 2017 20:53:32 +0800</pubDate><description><![CDATA[文｜ 谷歌开发技术专家 (GDE) 王玉成 (York Wang)前面絮叨了这么多，好像还没有一个总体的概念，我们如何写一个完整的代码呢？现在深度学习很火，那我们就把 Android Things 做成摄像头，然后抓拍图片，让 TensorFlow 去识别图像，最后用扬声器告诉我们结果。]]></description><category></category></item><item><title><![CDATA[Android Things专题5 I2C]]></title><link>https://blog.youkuaiyun.com/wfing/article/details/62236897</link><guid>https://blog.youkuaiyun.com/wfing/article/details/62236897</guid><author>wfing</author><pubDate>Wed, 15 Mar 2017 20:23:32 +0800</pubDate><description><![CDATA[文｜ 谷歌开发技术专家 王玉成(York Wang)上一讲中，我们说到 Android Things 的 API，以及 Peripheral I/O 设备包含的 API 的类型。但是作为程序员的我们，怎么理解这些 API 呢？我们就拿 I2C 的 API 来说吧。]]></description><category></category></item><item><title><![CDATA[Android Things 专题4 SDK框架]]></title><link>https://blog.youkuaiyun.com/wfing/article/details/60777091</link><guid>https://blog.youkuaiyun.com/wfing/article/details/60777091</guid><author>wfing</author><pubDate>Tue, 07 Mar 2017 19:28:01 +0800</pubDate><description><![CDATA[文｜ 谷歌开发者技术专家, 物联网方向 (IOT GDE) 王玉成(York Wang)物联网应用开发与手机和平板的应用开发有一些区别，那么Android Things与Android又有哪些差别呢？变化Android Things主要在Android的核心框架中扩展了一些支持物联的API。]]></description><category></category></item><item><title><![CDATA[Android Things专题3 开发环境搭建]]></title><link>https://blog.youkuaiyun.com/wfing/article/details/58250658</link><guid>https://blog.youkuaiyun.com/wfing/article/details/58250658</guid><author>wfing</author><pubDate>Mon, 27 Feb 2017 20:48:51 +0800</pubDate><description><![CDATA[文｜ 谷歌开发技术专家 (GDE) 王玉成 (York Wang)物联网 (IoT) 的应用开发，离不开跟开发板打交道，我们需要配置好开发板的各种环境，最后才能用 Android Studio 进行应用开发。我们今天就以 Raspberry Pi 3 为例，一起来搭建 Android Things 的开发环境。]]></description><category></category></item><item><title><![CDATA[Android Things专题2 硬件介绍]]></title><link>https://blog.youkuaiyun.com/wfing/article/details/56678918</link><guid>https://blog.youkuaiyun.com/wfing/article/details/56678918</guid><author>wfing</author><pubDate>Thu, 23 Feb 2017 19:47:16 +0800</pubDate><description><![CDATA[文｜ 谷歌开发者技术专家, 物联网方向 (IOT GDE) 王玉成(York Wang)经过2016年Brillo首批开发者的反馈，以及市场调研，为了照顾广大Android开发者的习惯，形成了现在的Android Things操作系统，完全兼容Android Studio的开发环境。 
今年2月8日，Google发布了Developer Preview 2(DP2)版。以后大概会每隔6到8周更新一个]]></description><category></category></item><item><title><![CDATA[Android Things专题 1.前世今生]]></title><link>https://blog.youkuaiyun.com/wfing/article/details/56026194</link><guid>https://blog.youkuaiyun.com/wfing/article/details/56026194</guid><author>wfing</author><pubDate>Mon, 20 Feb 2017 21:39:08 +0800</pubDate><description><![CDATA[文｜ 谷歌开发者技术专家, 物联网方向 (IOT GDE) 王玉成(York Wang)	2016 年 12 月，Google 发布了 Developer Preview 版的 Android Things，该平台为利用 Android 这一世界上最受支持的操作系统的强大功能构建物联网产品铺平了广阔的道路。但它并不是一个全新的操作系统，而是通过同样是 Google 开发的物联网操作系统 Brill]]></description><category></category></item><item><title><![CDATA[secure CRT彩色显示终端]]></title><link>https://blog.youkuaiyun.com/wfing/article/details/53373763</link><guid>https://blog.youkuaiyun.com/wfing/article/details/53373763</guid><author>wfing</author><pubDate>Mon, 28 Nov 2016 09:21:04 +0800</pubDate><description><![CDATA[secure CRT是windows下的一款好的终端连接工具，特别是ssh的连接，直接感觉putty实在是弱爆了。然后其它的串口啊。什么的连接也都支持。用上了，就放不下了。下面解决了secure CRT的字符编码，还有颜色显示的问题 。 
打开session设置 
 
显示彩色 
 
调整编码 
搞定]]></description><category></category></item><item><title><![CDATA[笔记五 第三章机器级表示总结二， 过程，递归，数组，结构与联合，调试及优化]]></title><link>https://blog.youkuaiyun.com/wfing/article/details/52741503</link><guid>https://blog.youkuaiyun.com/wfing/article/details/52741503</guid><author>wfing</author><pubDate>Thu, 06 Oct 2016 00:08:18 +0800</pubDate><description><![CDATA[接上篇。过程我们在学C语言中，经常会注意到一个话题，就是函数参数的入栈问题。然后，就有接下来的图片 
 
然后在栈向下生长的方向上，一般来就，就调用者和非调用者的关系。一般来说，当一个函数调用另一个函数时，会先把最右边的参数压入到高地址，然后把最左边的参数压入低地址。最后把函数的返回地址压入栈。这也是平时所说的，函数从右往左入栈的来源。 
上图中，还引出另一个问题，如果被调用者的参数，是调用者的局部]]></description><category></category></item><item><title><![CDATA[笔记四 第三章机器级表示总结一，移位运算，控制指令]]></title><link>https://blog.youkuaiyun.com/wfing/article/details/52706168</link><guid>https://blog.youkuaiyun.com/wfing/article/details/52706168</guid><author>wfing</author><pubDate>Sat, 01 Oct 2016 00:12:28 +0800</pubDate><description><![CDATA[概述

第四章主要讲述的是语言的机器级表示。 
实际上，做为非汇编的机器语言，在应用层的程序开发时，是很少接触到汇编语言的。但是，汇编语言又是非常重要，只有理解了汇编语言，才能如何优先代码，如何调试代码，如何写出健壮的代码。现有的C库中某些函数的问题，如何分析，如何规避。 
在嵌入式系统开发中，特别在非MMU的祼机程序中，程序的入口，异常管理，更需要对汇编语言的深入了解。 
这一章的分析流程特别适]]></description><category></category></item><item><title><![CDATA[vim的基本配置]]></title><link>https://blog.youkuaiyun.com/wfing/article/details/52551850</link><guid>https://blog.youkuaiyun.com/wfing/article/details/52551850</guid><author>wfing</author><pubDate>Fri, 16 Sep 2016 00:34:26 +0800</pubDate><description><![CDATA[之前一直用vim的几款插件，今天看到一篇关于vim的文章。然后自己写了一个脚本，并且把自己的.vimrc文件也拿也来了。可以自动下载。然后再手动配一下taglist，用ctags生成东西，然后跳转。代码及脚本的链接。实际上也没多少代码。 
包含了常用的几个插件。 
pathogen  :  用做插件管理 
supertab  ：按tab键之后可以自动补全 
syntastic： 当保存文件后，自动进]]></description><category></category></item><item><title><![CDATA[笔记三 第2章总结及感悟]]></title><link>https://blog.youkuaiyun.com/wfing/article/details/52551239</link><guid>https://blog.youkuaiyun.com/wfing/article/details/52551239</guid><author>wfing</author><pubDate>Thu, 15 Sep 2016 22:05:33 +0800</pubDate><description><![CDATA[前几天太忙。没来得及继续看书。今天趁放假，把第2章看完了。除浮点数知道存储格式，略过原理推导外，其它部分都认真读了。第二章的核心：数的表示与数的运算。需要注意下列几类问题：
数的表示 
数的表示，按数的类型划分：整数和浮点数。按定义规则，分为有符号数和无符号数。共4个大类。
其中，浮点，可以理解float以及double在内存单元中的定义情况，以及小数如何计算。然后+0.0与-0.0的差别，以及浮点]]></description><category></category></item><item><title><![CDATA[笔记二 习题2.26有符号和无符号引出的问题]]></title><link>https://blog.youkuaiyun.com/wfing/article/details/52464424</link><guid>https://blog.youkuaiyun.com/wfing/article/details/52464424</guid><author>wfing</author><pubDate>Wed, 07 Sep 2016 23:08:30 +0800</pubDate><description><![CDATA[这几天没有看书。以后记得坚持。看到讲位移和符号的关系。 
其中对于嵌入式开发人员，关注的是逻辑右移和算术右移(高位如果为1，就依次填充1)的差异性，一般的编译器默认的是算术右移。 
我们在操作硬件时，必须使用无符号的类型。上面是概念性的理解。但是关于有符号和无符号类型，在现实中的确会造成困扰。 
分析代码在此。我用的是64位的机器编译的，所以size_t类型是unsigned long int类型。]]></description><category></category></item><item><title><![CDATA[笔记一   2.1.8异或交换产生的问题]]></title><link>https://blog.youkuaiyun.com/wfing/article/details/52420770</link><guid>https://blog.youkuaiyun.com/wfing/article/details/52420770</guid><author>wfing</author><pubDate>Sat, 03 Sep 2016 01:38:29 +0800</pubDate><description><![CDATA[博客一放，又是好久没有写了。。。。
前两天买了两本砖头书回来。一本是《深入理解计算机系统》第二版的的中文版，另一本便是《算法导论》第三版的中文版。打算花时间认认真真消化完这两本书。再结合自己几年的工作经验，根据理论，做一些分析，力争找到问题的本源，以及解决办法，多写几句没事，争取把问题讲透。另外一点，便是想把不扎实的知识点，通过阅读这本书，把东西吃透。需要整理的代码，自己扔在[csdn的git托管中]]></description><category></category></item><item><title><![CDATA[linux的用户态程序栈的跟踪方法]]></title><link>https://blog.youkuaiyun.com/wfing/article/details/51692861</link><guid>https://blog.youkuaiyun.com/wfing/article/details/51692861</guid><author>wfing</author><pubDate>Thu, 16 Jun 2016 16:31:23 +0800</pubDate><description><![CDATA[linux的用户态程序栈的跟踪方法
GNU C中的libc相关函数介绍
实例分析
GNU C中的libc相关函数介绍这一部分文章来源于GNU C的在线帮助文档实例分析将下面的代码保存为main.c文件，然后用gcc编译#include <execinfo.h>
#include <stdio.h>
#include <stdlib.h>/* Obtain a backtrace and print]]></description><category></category></item><item><title><![CDATA[当了一回网管，见识了一下php的挂码方法]]></title><link>https://blog.youkuaiyun.com/wfing/article/details/49226479</link><guid>https://blog.youkuaiyun.com/wfing/article/details/49226479</guid><author>wfing</author><pubDate>Sun, 18 Oct 2015 12:08:32 +0800</pubDate><description><![CDATA[当了一回网管好长时间都没有更新博客了。这回也来写一把非研发的东西。问题起因是有一台有固定IP地址的web服务器，然后装的是windows版的。服务器上跑的是一个php的动态站点。后台用的是dedecms做为建站系统。但是最近以来。这个站点一直被挂马。倒底是windows服务器被攻破，还是网站被人上传了恶意的木马？不得而知。每回把服务器重新恢复，没过一段时间，又会被挂马，在首页最下端出现了“百度联盟”]]></description><category></category></item></channel></rss>