FlyingMcdull


  • 首页

  • 分类

  • 归档

  • 标签

  • 关于
FlyingMcdull

Linux内核-CFS进程调度器

发表于 2015-09-09 | 分类于 Linux

Linux内核进程调度是一个极其重要的模块,实现多任务切换,同时为了兼顾系统性能,调度器的设计需要足够精巧,最近仔细回顾了一下Linux内核进程调度器CFS的相关内容,整理记录一下。

阅读全文 »
FlyingMcdull

C程序的内存布局

发表于 2015-07-25 | 分类于 编程

学习了操作系统的一些基本知识之后,有必要对C程序的结构进行一下学习,事实上它并不是那么简单,这篇文章就对C语言程序在内存中的布局进行一下小结。

阅读全文 »
FlyingMcdull

Bochs模拟器的使用

发表于 2015-06-18 | 分类于 Linux

很早之前就在琢磨,能不能自己撸一个简单的操作系统内核出来,但是一直没有实质性行动。最近受师兄的启发,要开始造轮子了,不然编程能力是很难有提高的,就重拾当初的想法了。

阅读全文 »
FlyingMcdull

Spark Streaming数据接收和并行度的关系

发表于 2015-06-09 | 分类于 Spark Streaming

Spark Streaming在运行过程中数据来源分为两种,一种是从例如hdfs的文件系统直接读取,另外就是实时从网络接收数据,其中后者需要由运行在worker节点上的receiver来完成,具体接收数据过程在源码分析中已经简要介绍。这次就receiver和系统并行度的关系进行探讨和实验。

阅读全文 »
FlyingMcdull

Spark作业调度日志获取与分析

发表于 2015-05-26 | 分类于 Spark

Spark在Standalone模式下,作业调度采用中心调度方式。按Job-> Stage-> TaskSet-> run on executor步骤来实现作业的调度执行,因为折腾自己的一点东西需要获取Spark作业调度的详细信息,这里把获取方式和对日志的分析记录一下。

阅读全文 »
FlyingMcdull

Spark作业调度中stage的划分

发表于 2015-05-25 | 分类于 Spark

Spark在接收到提交的作业后,会进行RDD依赖分析并划分成多个stage,以stage为单位生成taskset并提交调度。这里stage划分是一个设计的亮点,这两天学习一下。

阅读全文 »
FlyingMcdull

Spark中RDD转换操作的具体实现--以map为例

发表于 2015-05-21 | 分类于 Spark

Spark使用RDD(弹性分布式数据集)来抽象分布式内存,提供一种抽象数据类型,具有高度容错的特点,对编程者提供了一种极为便捷的数据操作方式。Spark内部提供了丰富的RDD转换操作为编程者提供了丰富的RDD转换接口。学习Spark编程的第一步就是要了解一些常见的转换操作,最近看了一些常见的Spark中RDD转换操作,这里以最简单的map操作来学习一下Spark内部到底是如何进行RDD转换计算的。

阅读全文 »
FlyingMcdull

Paxos算法的一种简单理解

发表于 2015-05-18 | 分类于 分布式

Lamport提出的Paxos算法是一种基于消息传递且具有高度容错特性的一致性算法,被誉为分布式系统的基石。目前已经有很多成熟的分布式系统使用Paxos,如Google的Chubby、Megestore和Spanner,Zookeeper等。因为Lamport在论文中解释这个算法时将其描述成一种游戏,一般人从论文中很难将其和分布式系统中的一致性联系起来。搞不清楚Paxos算法的目的和在分布式存储系统中的应用(Lamport觉得是人们无法理解他的幽默)。

阅读全文 »
1234…6
Mcdull

Mcdull

42 日志
9 分类
19 标签
GitHub Weibo Facebook
友情链接
  • Liupeng's Blog
  • Seafooler's Blog
  • Charles's Blog
© 2014 - 2019 Mcdull
由 Hexo 强力驱动
主题 - NexT.Mist