自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Kevin的博客

keep hungry,keep foolish!

  • 博客(9)
  • 资源 (5)
  • 收藏
  • 关注

原创 【专栏】数据结构和算法之美-队列:队列在线程池等有限资源池中的应用

学习笔记如何理解“队列”?结构特征操作受限的线性表数据结构两端开放,一端是数据的入口,另一端是数据的出口行为特征先进先出,类似于水管,从一端进水,另一端出水,先进去的水会先流出来如何实现队列?基于数组实现:顺序队列/*Queue implement based on the array*//*Queue implement based on the linked lis...

2018-11-22 16:35:58 219

原创 【专栏】数据结构和算法之美-链表(上):如何实现LRU缓存淘汰算法?

学习笔记链表结构单链表示意图如下结构特征:尾节点的指针域指向NULL用头节点记录链表的基地址行为特征:插入或删除只需要考虑相邻节点指针的改变,其时间复杂度是O(1)通过指针将零散的内存块串联起来使用随机访问第K个元素的时间复杂度是O(n), 每个节点只能找到它后面的节点,因而要找到第K个元素就需要从链表头开始一个一个往后询问直到遇到第K个,没有数组那么好的性能。下图演示插...

2018-11-15 22:25:13 326

原创 Linux内核之旅-中断处理的软中断

前言中断处理程序机制局限性,它只能作为中断处理流程的“上半部”1,中断随时都会发生,它会以异步方式执行。2,中断处理程序要尽快地执行完(要它完成的工作越少越好),首先、它通常需要对硬件进行操作,这本身带来了时限要求,第二、其他中断都会被屏蔽,这直接影响了操作系统和硬件的通信,中断被屏蔽的时间会极大的影响系统的响应能力和性能。最后、它不再进程上下文中,不能被阻塞。该如何分配中断处理的...

2018-11-14 22:58:15 837

原创 【专栏】数据结构和算法之美-为什么很多编程语言中的数组都是从 0 开始的

学习笔记数组的特征1.线性表数据排成像一条线一样的结构,数据之间只是简单的前后关系。除了数组是一种线性表结构外,链表、队列和栈也是。与之对应的像二叉树、堆、图等就是非线性表。2.使用连续的内存空间3.存储相同类型数据特征2和3为随机访问到数组里的元素提供了可能,就是任意下标指示的元素可以直接访问到,寻址公式a[i]_address = base_address + i*data_t...

2018-11-14 16:18:04 195

原创 数据结构和算法之美-二叉树(上)

学习笔记“树”这种数据结构的形态特征包括有哪些命名节点和它们的概念,这些节点是根节点,叶子节点,父节点,子节点,兄弟节点等;以及相关节点关系的建立,这些关系是父子关系和兄弟关系“树"这种数据结构的‘物理’特征包括树的高度,深度,层和树的高度及其概念。几种特殊二叉树的形态特征: 满二叉树,完全二叉树。树的存储方法一种是基于指针或引用的链式存储,另一种是基于数组的顺序存储...

2018-11-14 10:05:39 163

原创 【专栏】数据结构与算法之美-目录

I. Referencesource code : https://github.com/wangzheng0822/algoII. Contents开篇词 : 从今天起,跨过“数据结构与算法”这道坎为什么要学习数据结构和算法?如何抓住重点,系统高效地学习数据结构和算法?复杂度分析(上):如何分析、统计算法的执行效率和资源消耗?复杂度分析(下):浅析最好、最坏、平均、均摊时间复杂度...

2018-11-12 20:24:15 2091

原创 Linux内核模块编程实践-入门,写第一个内核模块Hello world!

前言内核模块是Linux内核向外部提供的一个插口,其全称为动态可加载内核模块(Loadable Kernel Module,LKM),我们简称为模块。Linux内核之所以提供模块机制,是因为它本身是一个单内核(monolithic kernel)。单内核的最大优点是效率高,因为所有的内容都集成在一起,但其缺点是可扩展性和可维护性相对较差,模块机制就是为了弥补这一缺陷。什么是模块模块是具有独立...

2018-11-11 00:11:07 1108

原创 Ubuntu 18.04 安装和配置samba服务器

首先需要注意的是,此时服务器的版本是乌班图18.04 LTS Server ,安装配置Samba服务器 。首先来对当前的软件进行更新。sudo apt-get upgradesudo apt-get updatesudo apt-get dist-upgrade接下来开始安装samba服务器。sudo apt-get install samba samba-common然后来...

2018-11-09 22:23:32 2945

原创 用ssh协议实现宿主机远程登陆Ubuntu 系统 - Ubuntu 18.04 安装ssh服务器

用ssh协议实现宿主机远程登陆Ubuntu 系统 - Ubuntu 18.04 安装ssh服务器前言环境安装1. 打开终端2. 使用apt工具下载并安装openssh-server前言Secure Shell(SSH)是一种加密网络协议,用于在不安全的网络上安全地运行网络服务。利用SSH可以实现加密并安全地远程登录计算机系统。Ubuntu安装后默认只有ssh客户端,即只能在Ubuntu内去连...

2018-11-09 22:11:27 813

跟我一起学Makefile

对 GNU 的 make 进行讲述, 内容包括: 第一部分、概述 第二部分、关于程序的编译和链接 第三部分、Makefile介绍 第四部分、Makefile总述 第五部分、书写规则 第六部分、书写命令 第七部分、使用变量 第八部分、使用条件判断 第九部分、使用函数 第十部分、make 的运行 第十一部分、隐含规则 第十一部分、使用Make更新函数库文件

2016-11-06

深入理解计算机系统-实例代码汇总

包含《深入理解计算机系统》书中的所有实例代码,

2015-08-19

计算机系统漫游

编译系统,系统的硬件组织结构,hello程序的运行过程(读通过键盘输入的hello命令,把磁盘里的可执行文件加载到内存,cpu执行机器级执行,内存里的字符串写到显示器上)

2015-08-19

ECT memperf

1.Generate your own memory using the ECT memperf tool developed by Tom Stricker (the inventor of the memory mountain) and Christian Kurmann at ETH. 2.Furthermore we can use the same chart for characterization of local and remote transfers in other words accesses from computation and from communication. And we can do this regardless of the underlying architecture.

2015-08-17

微型web服务器(tiny web server)

1.The Tiny Web server (tiny.tar). 2.Expands with tar xvf tiny.tar into a directory called ./tiny that contains everything you need to test the Tiny web server, including sample HTML files, GIFS, CGI scripts, and the csapp.c and csapp.h files. Compiled and tested on Linux boxes. 3.The authoritative list of MIME types.

2015-08-17

空空如也

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

TA关注的人

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