自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 收藏
  • 关注

原创 The implement of responses for mocking out the requests

The implement of responses for mocking out the requests The implement of responses for mocking out the requests Utility of responses Basic Multiple responses Using a callback to modify the resp

2018-07-24 10:53:08 192

原创 Python笔记

数据结构 list 插入:insert(index, item), append(item) 删除:pop(index), remove(item) 合并:extend(List) dict 插入:update(Dict) 删除:popitem(), pop(key), del 合并:update(Dict) set 插入:add(item), update(iterable) ...

2018-07-24 10:52:27 153

原创 APUE读书笔记之四——文件和目录

第四章 文件和目录 4.1,引言 第四章主要讲的是文件的属性,以及操作这些属性的函数。文件的属性由一个结构体stat定义,其主要结构是: struct stat { mode_t  st_mode; //文件类型与权限; ino_t st_ino; //i节点序号; dev_t st_dev; //文件系统的设备号; dev_t st_rdev; //特殊文件(字符特殊文件和块特殊文

2016-11-06 23:56:22 515

原创 Spark MLlib学习笔记之二——Spark Mllib矩阵向量

第二章Spark Mllib矩阵向量   Spark Mllib底层的向量、矩阵运算使用了Breeze库,Breeze库提供了Vector/Matrix的实现以及相应计算的接口(Linalg)。但是在MLlib里面同时也提供了Vector和Linalg等的实现。在使用Breeze库时,需要导入相关包: Import breeze.linalg._ Import breeze.numeric

2016-09-25 15:14:58 7404

原创 APUE读书笔记之二——文件I/O

第三章 文件I/O 1,文件描述符 对于内核而言,所有打开的文件都用文件描述符引用。文件描述符是一个非负整数,当打开或者创建一个文件时,内核向进程返回一个文件描述符,支持POSIX的应用程序中,0,1,2被替换成标准输入STDIN_FILENO,标准输出STDOUT_FILENO,标准错误STDERR_FILENO,这些常量被定义在。Linux2.4对于每个进程的文件描述符数量的硬限制是104

2016-09-24 20:45:57 292

原创 APUE读书笔记之一——UNIX基础知识

第一章 UNIX基础知识 1,UNIX体系结构 控制计算机硬件资源,提供程序运行环境的软件称为内核。内核的接口为系统调用(System Call);公共函数库构建在系统调用接口之上,应用软件即可以调用公共函数库,也可以调用系统调用。Shell是一种特殊的应用程序,它为运行其他应用程序提供了一个接口。Linux是GNU操作系统的内核,此种操作系统为GNU/Linux。 2,登录 用户登录系统

2016-09-24 17:47:20 274

原创 Linux内核分析之九——课程总结

作者:姚开健 原创作品转载请注明出处 《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-1000029000 课程博客文章目录: Linux内核分析之一——简单C程序的汇编代码工作过程分析 http://blog.csdn.net/hoikinyiu/article/details/50753103 文章介绍了

2016-05-01 09:39:37 404

原创 Linux内核分析之八——进程调度与进程切换的过程

作者:姚开健 原创作品转载请注明出处 《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-1000029000 1、进程调度的时机 在Linux系统中,进程调度一般发生在中断处理过程中(包括时钟中断,I/O中断,系统调用和异常),直接调用schedule()系统调用,或者返回用户态时根据need_resched标记调

2016-04-17 11:27:04 522

原创 Linux内核分析之七——Linux内核如何装载和启动一个可执行程序

作者:姚开健 原创作品转载请注明出处 《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-1000029000 1、ELF的文件格式。 通常我们将程序文件编译后得到的目标文件,在Linux上其格式就是ELF文件,就是 EXECUTABLE AND LINKABLE FORMAT,其格式如下所示: 我

2016-04-10 22:06:31 899

原创 Linux内核分析之六——进程的描述与进程的创建

作者:姚开健 原创作品转载请注明出处 《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-1000029000 进程的描述 Linux系统的进程由一个进程描述符PCB,即task_struct结构体来描述,其在内核中代码实现如下: struct task_struct { 1236 volatile long

2016-04-02 09:27:10 1191

原创 Linux内核分析之五——分析系统调用(system_call)的执行机制

作者:姚开健 原创作品转载请注明出处 《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-1000029000 当系统进行系统调用时,系统会通过int 0x80进行跳转到system_call这个地方,它是在系统初始化时,调用trap_init()就开始初始化好的地址,如果在以后有发生系统调用,则会跳转至system_ca

2016-03-27 21:43:53 2536

原创 Linux内核分析之四——系统调用的工作机制

作者:姚开健 原创作品转载请注明出处 《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-1000029000 学过计算机操作系统的都知道,CPU工作时有两种状态,一种是用户态,一种是内核态,用户态意味着代码访问的范围会受到限制,在32位X86的机器上,4G的内存里,在用户态的时候,只能访问0x00000000-0xbff

2016-03-20 18:05:03 1025

原创 Linux内核分析之三——使用gdb跟踪调试内核从start_kernel到init进程启动

作者:姚开健 原创作品转载请注明出处 《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-1000029000 Linux内核(本文以Linux-3.18.6为例)的启动在源代码init文件夹里的main.c文件,在经过执行一些汇编代码(把内核代码文件放到内存中解压缩,初始化C执行环境等等工作)后,会进入一个C编写的函数s

2016-03-11 17:09:33 2548

原创 Linux内核分析之二——时间片轮转多道程序上下文切换机制之堆栈分析

作者:姚开健 原创作品转载请注明出处 《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-1000029000 在计算机中,能够保证计算机程序运行的一些重要机制包括:存储程序,函数调用堆栈机制,中断机制以及多道程序上下文切换机制。本文要介绍的就是在时间片轮转的情况下,多道程序上下文切换的机制是如何工作的。以一个小小的ker

2016-03-06 10:53:32 1038

原创 Linux内核分析之一——简单C程序的汇编代码工作过程分析

作者:姚开健 原创作品转载请注明出处 《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-1000029000 1,计算机工作及汇编基础知识 现代计算机采用冯诺依曼体系结构,即存储程序计算机。计算机将代码指令储存在内存中,然后CPU将一条一条指令从内存中读取并执行,得出结果。在32位,并采用采用AT&T汇编的计算机里,eip

2016-02-27 01:43:11 585

原创 大型网站架构演变及缓存技术

网站架构的演变: 1,从一个小网站开始:一台服务器,只有文件和数据库。 2,数据服务与应用服务分离:应用服务器更好的CPU,数据服务器更快更大的硬盘。动静态资源分离。 3,使用缓存:1,客户端缓存(浏览器,)2,前端页面缓存(squid)3,页面片段缓存ESI(Edge Side Includes)4,应用服务器本地缓存 5,远程分布式缓存 4,服务器增

2016-01-17 01:13:59 552

原创 Python 网络编程基础

首先是TCP socket: Client: 1,import socket ,然后hostname, port; 2,socket构造:s = socket.socket(socket.AF_INET, socket.SOCKET_STREAM),AF_INET是指IPV4,SOCKET_STREAM是TCP socket,若要UDP则参数为SOCKET_DGRAM; 3,获取主机地址(

2016-01-15 02:03:53 368

原创 学习心智——烦恼的时候看一看

严格来说,这并不是我的原创,而是我摘抄了网上的一些觉得很受用的观点或者语句,总结在这里。 来自于李笑来老师(http://xiaolai.li/),simmmbaaa(http://blog.csdn.net/jnu_simba/)等等。 1,始终要有学习意识。有学习意识的人,与没有学习意识、或者学习意识相对比较弱的人,总是有着天壤之别,无论是在选择上,还是在行动上,都是如此。 2,进步就是

2016-01-14 06:22:33 819

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除