Linux进程关系
Linux的进程相互之间有一定的关系。比如说,在Linux进程基础中,我们看到,每个进程都有父进程,而所有的进程以init进程为根,形成一个树状结构。我们在这里讲解进程组和会话,以便以更加丰富的方式了管理进程。 进程组 (process group)每个进程都会属于一个进程组(process group),每个进程组中可以包含多个进程。进程组会有一个进程组领导进程 (process gr
Linux常用命令
我总结了常用的Linux命令,方便你的Linux使用。下面是格式说明,你现在可以跳过,直到遇到疑问时再来查询。$ 命令行提示符粗体表示命令斜体表示参数 filename, file1, file2 都是文件名。有时文件名有后缀,比如file.zip command 命令名 dir 文件夹名&
C编译: 使用gdb调试
介绍gdb调试命令行使用gdb是the GNU Debugger的简称。它是一款UNIX平台的调试器(debugger),可用于为C, C++, Objective-C, Java, Fortran等程序debug。在gdb中,你可以通过设置断点(break point)来控制程序运行的进度,并查看断点时的变量和函数调用状况,从而发现可能的问题。在许多IDE中,gdb拥有图形化界面。这里主要介绍g
C编译: makefile基础
教大家一个makefile基础教学在编译一个大型项目的时候,往往有很多目标文件、库文件、头文件以及最终的可执行文件。不同的文件之间存在依赖关系(dependency)。比如当我们使用下面命令编译时:$gcc -c -o test.o test.c$gcc -o helloworld test.o可执行文件helloworld依赖于test.o进行编译的,而test.o依赖于test.c。 
Linux文件系统的实现
Linux文件管理从用户的层面介绍了Linux管理文件的方式。Linux有一个树状结构来组织文件。树的顶端为根目录(/),节点为目录,而末端的叶子为包含数据的文件。当我们给出一个文件的完整路径时,我们从根目录出发,经过沿途各个目录,最终到达文件。我们可以对文件进行许多操作,比如打开和读写。在Linux文件管理相关命令中,我们看到许多对文件进行操作的命令。它们大都基于对文件的打开和读写操作。比如ca
Mac OSX网络诊断命令
下面是一些Mac OSX下常用的网络诊断命令。它们能帮助我们发现网络问题。有些工具,如arping, arp-scan,需要借助HomeBrew安装。 基本工具网络诊断的第一步,是了解自己的设备,比如有哪些接口,IP地址都是什么。ifconfig显示网络接口(interface)信息。如接口名称,接口类型,接口的IP地址,硬件的MAC地址等。 ARPARP协议用在局域网(LAN
纸上谈兵: 排序算法简介及其C实现
排序算法(Sorting Algorithm)是计算机算法的一个组成部分。 排序的目标是将一组数据 (即一个序列) 重新排列,排列后的数据符合从大到小 (或者从小到大) 的次序。这是古老但依然富有挑战的问题。Donald Knuth的经典之作《计算机程序设计艺术》(The Art of Computer Programming)的第三卷就专门用于讨论排序和查找。从无序到有序,有效的减小了
Java进阶09 事件响应
在GUI中,我们看到了如何用图形树来组织一个图形界面。然而,这样的图形界面是静态的。我们无法互动的对该界面进行操作。GUI的图形元素需要增加事件响应(event handling),才能得到一个动态的图形化界面。元素, 事件, 监听器我们在GUI一文中提到了许多图形元素。有一些事件(Event)可能发生在这些图形元素上,比如:点击按钮拖动滚动条选择菜单Java中的事件使用对象表示,比如Action
Java进阶10 内存管理与垃圾回收
整个教程中已经不时的出现一些内存管理和垃圾回收的相关知识。这里进行一个小小的总结。Java是在JVM所虚拟出的内存环境中运行的。内存分为栈(stack)和堆(heap)两部分。我们将分别考察这两个区域。 栈栈的基本概念参考纸上谈兵: 栈 (stack)。许多语言利用栈数据结构来记录函数调用的次序和相关变量(参考Linux从程序到进程)。在Java中,JVM中的栈记录了线程的方法调用。每个
概率论01 计数
概率概率论研究随机事件。它源于赌徒的研究。中有许多随机事件,比如投掷一个,是否只凭运气呢?赌徒逐渐发现随机事件的规律。投掷两个是常见的游戏。如果重复很多次,那么总数为2的次数会比总数7的次数少。这就是赌徒把握到的规律:尽管我无法预知事件的具体结果,但我可以了解每种结果出现的可能性。这是概率论的核心。“概率”到底是什么?这在数学上还有争议。“频率派”认为概率是重复尝试多次,某种结果出现的次数在尝试的
绘图: matplotlib核心剖析
matplotlib是基于Python语言的开源项目,旨在为Python提供一个数据绘图包。我将在这篇文章中介绍matplotlib API的核心对象,并介绍如何使用这些对象来实现绘图。实际上,matplotlib的对象体系严谨而有趣,为使用者提供了巨大的发挥空间。用户在熟悉了核心对象之后,可以轻易的定制图像。matplotlib的对象体系也是计算机图形学的一个优秀范例。即使你不是Python程序
数据可视化的秘密
研究数据的方法有很多,比如利用统计方法,计算数据的平均值和标准差;再比如使用模型,拟合数据。数据通常是大量的,人脑难以直接把握其中的信息。研究数据的最终目的是减小海量数据的信息量,将数据中的信息客观的展示出来,并最终整理成简单的,人脑可以掌握的知识。 数据可视化图形是直观呈现数据的直接方法。然而,将大量数据在同一个图表中画出来并不容易。早期的测绘、天气数据都需要长时间的手工绘制。随着计算
飓风“桑迪”路径图的制作
飓风"桑迪" (Sandy)横扫美国东部,并在纽约附近登录,带走113条人命,并造成500亿美元的损失,桑迪也被列为美国历史上最昂贵的飓风。我们今天利用之前介绍过的Python的matplotlib和basemap包,来制作桑迪的路径图,重构桑迪的整个发育过程。、下面是做成动画效果的GIF图 (由于博客园不允许上传2M以上的图片,所以分辨率有限,但你总可以作出一个高分辨率的动画
绘图: Python matplotlib简介
matplotlib是基于numpy的一套Python工具包。这个包提供了丰富的数据绘图工具,主要用于绘制一些统计图形。你可以找到很多各式各样的例子: 通过数据绘图,我们可以将枯燥的数字转换成容易被人们接受的图表,从而让人留下更加深刻的印象。实际上,早在一百多年前,南丁格尔就曾经用统计图形来说服英国政府,以改善军队的卫生状况。我们将以GDP数据为例子,看看如何绘制经典的饼图和条形图。&n
绘图: matplotlib Basemap简介
在数据可视化过程中,我们常常需要将数据根据其采集的地理位置在地图上显示出来。比如说我们会想要在地图上画出城市,飞机的航线,乃至于军事基地等等。通常来说,一个地理信息系统都会带有这样的功能。今天我们讨论如何在Python上实现,并且使用免费的工具包。 matplotlib是Python常用的数据绘制包。它基于numpy的数组运算功能。matplotlib绘图功能强大,可以轻易的画出各种统计
概率论11 协方差与相关系数
前面介绍的分布描述量,比如期望和方差,都是基于单一随机变量的。现在考虑多个随机变量的情况。我们使用联合分布来表示定义在同一个样本空间的多个随机变量的概率分布。联合分布中包含了相当丰富的信息。比如从联合分布中抽取某个随机变量的边缘分布,即获得该随机变量的分布,并可以据此,获得该随机变量的期望和方差。这样做是将视线限制在单一的一个随机变量上,我们损失了联合分布中包含的其他有用信息,比如不同随机变量之间
概率论12 矩与矩生成函数
我们重新回到对单随机变量分布的研究。描述量是从分布中提取出的一个数值,用来表示分布的某个特征。之前使用了两个描述量,即期望和方差。在期望和方差之外,还有其它的描述量吗? 斜度值得思考的是,期望和方差足以用来描述一个分布吗?如果答案是可以,那么我们就没有必要寻找其它描述量的。事实上,这两个描述量并不足以完整的描述一个分布。 我们来看两个分布,一个是指数分布:f(x)={ex0if
概率论13 中心极限定律
在整个概率论中,核心的问题是随机变量的分布。正如我们在离散分布和连续分布中看到的,分布有许多种类。更夸张的是,在满足概率公理的前提下,我们完全可以自行设计分布。想像一下,如果有一天数学书上印一个Vamei分布,这是多么美好的事情啊!然而,这一愿望并不那么容易实现。那些“名流”分布,比如“泊松”,“高斯”,“伯努利”分布,往往在理论上很重要,所以得到了数学家的深入研究。“知名”分布的特性(比如它们的
数学与编程:“概率论”总结
终于写完概率论部分的内容。写一个总结,同时算是导读。这两天花了些时间,对原文进行修订。自己预期的目标,是将概率论的理论和编程结合起来。这里选择的编程工具是Python和一些第三方的包。我看过一些概率的书籍。有一些在数学上处理得好,但太偏重于纯粹数学;概率和编程结合的书,又过“实用”,没有把概率论的数学本质讲清楚。理论是最好的实用。为什么不能把简洁优美的数学理论和同样美妙的编程合在一起呢?有了这个疑
统计Go, Go, Go
结束了概率论,我们数据之旅的下一站是统计。这一篇,是统计的一个小介绍。 统计是研究数据的学科。它包括描述数据,推测群体信息,判断假设的真伪。统计是一门实用学科。人们利用统计,寻找下一个NBA巨星,推测奥斯卡奖项,寻找自己的真心伴侣。在电影“点球成金”中,球队的经理就是利用统计思想,来搜寻球员,管理球队,最终造就了一支劲旅。点球成金 统计这件大事如果说最早