<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[brightlee`s blog]]></title><description><![CDATA[Stay hungry，Stay foolish]]></description><link>https://blog.youkuaiyun.com/brighlee</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; brighlee]]></copyright><item><title><![CDATA[ISCA2018论文分享-Dynamic Memory Dependence Predication]]></title><link>https://blog.youkuaiyun.com/brighlee/article/details/88425289</link><guid>https://blog.youkuaiyun.com/brighlee/article/details/88425289</guid><author>brighlee</author><pubDate>Tue, 12 Mar 2019 17:36:48 +0800</pubDate><description><![CDATA[Dynamic Memory Dependence Predication


Conferences: ISCA, 2018
Authors: Zhaoxiang Jin ; Soner Önder
Site: https://ieeexplore.ieee.org/document/8416831
Keywords: Memory Dependence Prediction, Store Qu...]]></description><category></category></item><item><title><![CDATA[ISCA2018论文分享-RANA神经加速器]]></title><link>https://blog.youkuaiyun.com/brighlee/article/details/84574131</link><guid>https://blog.youkuaiyun.com/brighlee/article/details/84574131</guid><author>brighlee</author><pubDate>Tue, 27 Nov 2018 21:39:53 +0800</pubDate><description><![CDATA[RANA: Towards Efficient Neural Acceleration with Refresh-Optimized Embedded DRAM


Conferences: ISCA, 2018
Authors: Fengbin Tu ; Weiwei Wu ; Shouyi Yin ; Leibo Liu ; Shaojun Wei
Site: https://ieeexplo...]]></description><category></category></item><item><title><![CDATA[复制状态机(State Machine Replication)]]></title><link>https://blog.youkuaiyun.com/brighlee/article/details/78691666</link><guid>https://blog.youkuaiyun.com/brighlee/article/details/78691666</guid><author>brighlee</author><pubDate>Fri, 01 Dec 2017 22:19:07 +0800</pubDate><description><![CDATA[这篇博文主要是对wiki上的复制状态机的翻译。 复制状态机在分布式领域是一个常用且重要的技术，通过复制服务副本，并和副本一起来协调客户端的交互，来实现容错服务。这个方法同样提供了一个框架，来理解和设计复制管理协议。当然，一切的技术的源头都是业务，针对业务需求来实现相关技术是最高效、最聪明的方法。因此学习技术之前，多问问自己，这样实现的目的是什么，如果]]></description><category></category></item><item><title><![CDATA[《linux内核设计与实现-笔记2》]]></title><link>https://blog.youkuaiyun.com/brighlee/article/details/78469465</link><guid>https://blog.youkuaiyun.com/brighlee/article/details/78469465</guid><author>brighlee</author><pubDate>Tue, 07 Nov 2017 16:38:33 +0800</pubDate><description><![CDATA[第 3 章 进程管理这一章主要介绍进程在linux系统中的表示，从如何创建到如何被回收的整个过程。同时特别提到了线程在linux系统中的实现。进程的定义：进程就是处于执行期的程序，但进程不仅局限于可执行代码，还包括其他资源，比如打开的文件，挂起的信号，内核数据，处理器状态，多个线程，全局变量等。    线程的定义： 
线程是进程中活动的对象，线程有单独的程序计数器，进程栈，一组进程寄存器。值得注意的]]></description><category></category></item><item><title><![CDATA[shell 命令集合]]></title><link>https://blog.youkuaiyun.com/brighlee/article/details/78460689</link><guid>https://blog.youkuaiyun.com/brighlee/article/details/78460689</guid><author>brighlee</author><pubDate>Mon, 06 Nov 2017 19:03:16 +0800</pubDate><description><![CDATA[本文关于一些常用的shell命令和方法的总结以及记录。会经常更新，供自己总结和积累之用]]></description><category></category></item><item><title><![CDATA[《linux内核设计与实现-笔记1》]]></title><link>https://blog.youkuaiyun.com/brighlee/article/details/78460655</link><guid>https://blog.youkuaiyun.com/brighlee/article/details/78460655</guid><author>brighlee</author><pubDate>Mon, 06 Nov 2017 18:57:36 +0800</pubDate><description><![CDATA[第 1 章  Linux 内核简介linux是类unix系统，因此书籍一开头说明了unix的开发历程。unix强大的根本原因在于：
unix很简洁，有明确设计目的，系统调用精简
所有东西都被当作文件对待
unix内核和相关系统工具是c语言编写，具有良好的移植能力
unix进程创建速度快，并且有fork系统调用
unix有简单且稳定的进程间通信原语
至今，unix已经是一个支持抢占式多任务、多线程、虚]]></description><category></category></item><item><title><![CDATA[9月总结]]></title><link>https://blog.youkuaiyun.com/brighlee/article/details/78299331</link><guid>https://blog.youkuaiyun.com/brighlee/article/details/78299331</guid><author>brighlee</author><pubDate>Fri, 20 Oct 2017 20:46:32 +0800</pubDate><description><![CDATA[时间真是过得很快，就又到了10月。找工作是最近的一个主题，加上导师以及实习的事情，真的是非常的忙。当然现在基本已经确定要从事云计算的行业，因此在不断的学习和积累相关知识。在这里说一些自己的体会，仅代表自己的观点，欢迎大家指正！云计算纵向来看，分为iaas、paas、saas。具体的概念想必大多数人都以了解。iaas，基础即服务，这个块大公司都在努力做到最好，当然基本上的竞争都差不多了，一个很重要的原]]></description><category></category></item><item><title><![CDATA[分布式理论基础-选举、多数派、租约]]></title><link>https://blog.youkuaiyun.com/brighlee/article/details/77946898</link><guid>https://blog.youkuaiyun.com/brighlee/article/details/77946898</guid><author>brighlee</author><pubDate>Tue, 12 Sep 2017 16:40:04 +0800</pubDate><description><![CDATA[选举之前我们聊了2pc、3pc，其中都强调了coordinator的概念。实际上，在分布式系统中，节点之间一开始都是平等的，没有主次。为了运用2pc、3pc，也为了保证事务的原子性，一般都会选择一个节点作为coordinator(也叫leader、master节点)。因此就会有各种选举策略，本文列举了三种方式，可以解决大部分情况下的问题。
选举（election）
实际上，选举问题也是一个一致性问题]]></description><category></category></item><item><title><![CDATA[一点小感悟]]></title><link>https://blog.youkuaiyun.com/brighlee/article/details/77915258</link><guid>https://blog.youkuaiyun.com/brighlee/article/details/77915258</guid><author>brighlee</author><pubDate>Sat, 09 Sep 2017 15:30:54 +0800</pubDate><description><![CDATA[不知不觉，已经到了9月。近几个月的找工作也快接近尾声了。能够找到心仪的企业已经是同学们最大的期望。我也不例外。今天算是一个阶段的转折，准备开始新一轮的努力。好好奋斗，一切为了自己，为了家人。秋天是一个可爱的季节，我经常能够看到北京美丽的晚霞。虽然这种晴朗的天气比较少，但偶尔的出现总会让你心动不已。人人都说程序猿不会说话，程序猿不懂的生活，只会写代码。我们要做懂生活，热爱生活的程序猿~今天，一篇《一个]]></description><category></category></item><item><title><![CDATA[分布式理论基础-一致性、2PC、3PC]]></title><link>https://blog.youkuaiyun.com/brighlee/article/details/77229262</link><guid>https://blog.youkuaiyun.com/brighlee/article/details/77229262</guid><author>brighlee</author><pubDate>Wed, 16 Aug 2017 10:33:54 +0800</pubDate><description><![CDATA[一致性问题是分布式理论中的根本性问题。
  解决一致性问题的两种方法，2PC、3PC 满足一致性系统需要：
  agreement(全认同)
  validity(值合法)
  termination(可结束)面临的问题：
  消息传递异步无序(asynchronous)
  节点宕机(fail-stop)
  节点恢复(fail-recover)
  网络分化(network partit]]></description><category></category></item><item><title><![CDATA[6月总结]]></title><link>https://blog.youkuaiyun.com/brighlee/article/details/74780125</link><guid>https://blog.youkuaiyun.com/brighlee/article/details/74780125</guid><author>brighlee</author><pubDate>Fri, 07 Jul 2017 21:55:00 +0800</pubDate><description><![CDATA[写博客其实有一段时间了。总有有些意犹未尽，过了一个充实且忙碌的一个月，是应该有点总结性的东西。人总是容易浮躁。有了一些小的成绩，心里总是很在意。研二以来，自己还是非常努力的。一边完成导师的任务，一边刷题找工作。但是一些成绩不能让自己止步不前。不然之前的努力都白费了。从事计算机这个行业，如果不能以坚持学习的态度，就会落后于时代，落后于他人。现在大家都在努力找好的公司，因此自己也不能掉队。6月份主要]]></description><category></category></item><item><title><![CDATA[C++面向对象程序设计]]></title><link>https://blog.youkuaiyun.com/brighlee/article/details/73612081</link><guid>https://blog.youkuaiyun.com/brighlee/article/details/73612081</guid><author>brighlee</author><pubDate>Thu, 22 Jun 2017 23:25:11 +0800</pubDate><description><![CDATA[前言面向对象有三个核心概念，抽象、继承、多态。数据抽象就是多类事物的共同特征抽象出来，抽象出一个类，这个类定义了接口。继承是描述类与类之间的关系，是一种包含关系。比如苹果和梨子都是水果，水果是基类，它包含苹果和梨子的共同特征（数据特征、行为特征），而苹果和梨是派生类，有它们自己独有的特征。多态，c++主要指的是动态绑定，根据里氏替换原则，使用父类的地方都可以用子类去替换。在运行时，根据实际类型（c+]]></description><category></category></item><item><title><![CDATA[C++拷贝控制]]></title><link>https://blog.youkuaiyun.com/brighlee/article/details/73522252</link><guid>https://blog.youkuaiyun.com/brighlee/article/details/73522252</guid><author>brighlee</author><pubDate>Tue, 20 Jun 2017 23:06:14 +0800</pubDate><description><![CDATA[前言c++作为高级语言，面向对象编程是其重要的语言特性。设计好的架构，其基础也是类的设计。我们之前已经将类本身的知识梳理了一遍。这一章着重介绍类控制，包括拷贝控制、重载、面向对象设计以及模板和泛型编程。这些非常非常重要，是实现工程必须要掌握的基础知识。要打起十分的精神来学习。按照c++ primer的顺序，我们从拷贝控制说起。这章看的时间有点久，有些东西很陌生。可能自己接触的实际工程太少，有些经验的]]></description><category></category></item><item><title><![CDATA[C++动态内存和智能指针]]></title><link>https://blog.youkuaiyun.com/brighlee/article/details/73504208</link><guid>https://blog.youkuaiyun.com/brighlee/article/details/73504208</guid><author>brighlee</author><pubDate>Tue, 20 Jun 2017 17:33:31 +0800</pubDate><description><![CDATA[前言对象有生命周期，C++对象的生命周期与存储位置是息息相关的。C++对象按照创建位置可以分为全局对象、局部对象、局部静态对象。他们的生命周期是固定的，由编译器创建和销毁。另外，C++支持动态分配对象，动态对象的分配和释放需要程序显示的操作。C++内存分为静态存储区、栈内存、堆内存三种。
静态内存：保存局部static对象、类static数据成员、全局变量
栈内存：保存函数内定义的非static对象]]></description><category></category></item><item><title><![CDATA[IO、容器、泛型算法和动态内存]]></title><link>https://blog.youkuaiyun.com/brighlee/article/details/73258684</link><guid>https://blog.youkuaiyun.com/brighlee/article/details/73258684</guid><author>brighlee</author><pubDate>Wed, 14 Jun 2017 23:15:39 +0800</pubDate><description><![CDATA[前言最近刚刚开题答辩，现在需要重新投入到战斗中来。C++标准库是一类强大的数据结构和算法的集合。利用C++泛型的能力，使得一些数据结构和算法得以方便的使用。C++标准库内容很多，我也只打算按照C++primer的顺序，复习其中的IO、容器、泛型算法以及动态内存。这些都是轮子，可以直接拿来用。但是有必要好好阅读和理解其中的源代码，对于我们来说将是很大的提升。往往在刷题过程中，都需要用到很多数据结构。合]]></description><category></category></item><item><title><![CDATA[类---C++ 基础]]></title><link>https://blog.youkuaiyun.com/brighlee/article/details/72941466</link><guid>https://blog.youkuaiyun.com/brighlee/article/details/72941466</guid><author>brighlee</author><pubDate>Thu, 08 Jun 2017 23:02:28 +0800</pubDate><description><![CDATA[前言不知不觉，已经复习到了类。面向对象编程是C++的一个重要特征。类是对数据和操作的封装，相对于函数，提供了更高层次的抽象。例子：struct Sales_data {
    std::string isbn() const { return bookNo;}
    Sales_data &combine(const Sales_data &);
    double avg_price() c]]></description><category></category></item><item><title><![CDATA[函数---C++ 基础]]></title><link>https://blog.youkuaiyun.com/brighlee/article/details/72900446</link><guid>https://blog.youkuaiyun.com/brighlee/article/details/72900446</guid><author>brighlee</author><pubDate>Wed, 07 Jun 2017 15:39:32 +0800</pubDate><description><![CDATA[前言刚看了《桃子的博客》，关于个人阶段性学习的总结。深感自己要从事后端开发需要学习更多的知识。语言仅仅是基础的基础。还需要对算法以及操作系统、网络、分布式有深入的学习。前方的路还很长，现在必须要先打起精神，先把这个语言过关计划搞定。所有的坚持一定会有收获。函数是编程语言中的重要一环，实际是一个代码块。有入口和出口。本文只提出一些需要注意的东西。1.局部对象函数构成一个新的作用域，在函数内部定义的变量]]></description><category></category></item><item><title><![CDATA[表达式---C++ 基础]]></title><link>https://blog.youkuaiyun.com/brighlee/article/details/72900366</link><guid>https://blog.youkuaiyun.com/brighlee/article/details/72900366</guid><author>brighlee</author><pubDate>Wed, 07 Jun 2017 15:34:46 +0800</pubDate><description><![CDATA[前言这一章相对来说比较轻松，主要涉及到的是c++中常见的运算符。一些耳熟能祥的东西我就不打算写在博客里了，主要分析一些细微的点。虽然不要注重细节，但是不知道细节就没有好的语言基础。骐骥千里，非一日之功。C++ 中提供了许多的运算符，算术运算符、逻辑和关系运算符、赋值运算符、位运算符等等。按照操作数的数量，可以分为一元运算符、二元运算符、三元运算符，一般的来说它们之间的优先级也是一元大于二元，二元大于]]></description><category></category></item><item><title><![CDATA[C++反射的实现]]></title><link>https://blog.youkuaiyun.com/brighlee/article/details/72885219</link><guid>https://blog.youkuaiyun.com/brighlee/article/details/72885219</guid><author>brighlee</author><pubDate>Tue, 06 Jun 2017 17:04:58 +0800</pubDate><description><![CDATA[前言反射的概念：
  指程序在运行时，访问、检测和修改它本身状态或行为的一种能力。wikipedia
简单的来说，就是一种自描述和自控制的能力。如果联想到镜子，就可以很好的理解，你能通过镜子看到自己，包括自己的动作，自己的外表。唯一不同的地方是，计算机语言的反射能力还包含对看到的自己采取措施。反射的作用在计算机编程语言中，反射机制可以用来：
获取类型的信息，包括属性、方法
动态调用方法
动态构造对象]]></description><category></category></item><item><title><![CDATA[字符串、向量和数组---C++ 基础]]></title><link>https://blog.youkuaiyun.com/brighlee/article/details/72873528</link><guid>https://blog.youkuaiyun.com/brighlee/article/details/72873528</guid><author>brighlee</author><pubDate>Tue, 06 Jun 2017 00:58:39 +0800</pubDate><description><![CDATA[前言上一章，复习了基本数据类型，趁热打铁，继续把字符串、向量（vector）和数组搞定。字符串是由字符组成，也是序列结构，因此，本章其实设计到的数据结构是序列。那么就需要考虑是否能够随机访问，如何遍历，如何进行一些基本操作，以及这些基本操作的效率问题。整个系列的复习会将所有涉及到的stl进行分析，工作量可能会大，但是复习嘛，总是一步一个脚印。废话不多说，开始干货。3.1 using声明命名空间命名空]]></description><category></category></item></channel></rss>