Linux操作系统安装 | CentOS
前文已述,Linux有很多发行版本,不能一一介绍。为了便于入门,本文选择使用率比较高的发行版本,以CentOS6.4为例,为大家介绍Linux的安装。另外Ubuntu也是使用率较高的操作系统,如果感兴趣可以参考《Ubuntu系统安装指导》。大家可以从下面两个地址下载CentOS6.4:网易镜像:ht
Go语言从入门到精通-00 | 第一个程序
本文是一个系列的文章,用于Go语言的入门。本号期望通过一个具体的实例开发,带领大家进入Go语言开发的大门。本文不要求读者具有任何Go语言的基础,也就是完全可以是Go语言小白,但要有一定的计算机理论的基础,了解其它开发语言更加。为了增加本文的趣味性,本系列文章最后会作出一个小软件,也就是一个简单的We
Go语言从入门到精通-01 | 数据类型与表达式
上一篇文章我们给了一个入门程序,接下来我们介绍在Go语言中的数据类型和表达式相关的内容。由于本文是简介性的文章,因此并不会事无巨细的介绍所有内容,只是能够让读者达到理解基本概念,并能够使用的程度,更为深入的学习还需要其它材料。数据类型与变量同任何其它编程语言一样,Go语言支持多种类型的数据。从大的分
Go语言从入门到精通-02 | 函数和控制语句
前文的内容都是一大坨堆到那的,看上去很难看。下面我们介绍一下如何通过函数对代码进行封装,同时会介绍如何通过控制语句改变程序执行的流程。函数比如我们要实现某个功能,举个简答的例子,实现一个整数加法的功能。实现起来很简单,代码大概如下:varadd_1,add_2,add_3int32add_1=15a
Go语言从入门到精通-03 | 复杂数据类型
前面文章本号给大家介绍了基本的数据类型,表达式和函数等内容。有的时候基本的数据类型可能不能满足我们开发的需求,我们可能需要一些数据类型的组合。比如我们要把一个班级里面所有人的平均成绩存在一起,然后计算整个班级的平均成绩。大家想一下,这种情况下应该用什么类型的变量?
Go语言从入门到精通-04| Socket客户端与服务端
可以从本号的github下载代码,shuningzhang/learn_golang电子书下载地址:shuningzhang@126.com的共享文件-城通网盘-50TB超大网盘u19702000.ctfile.com大家都知道Web服务是基于HTTP协议的,而HTTP协议又是TCP协议上的应用层
Go语言从入门到精通-04| Socket客户端与服务端
可以从本号的github下载代码,shuningzhang/learn_golang电子书下载地址:shuningzhang@126.com的共享文件-城通网盘-50TB超大网盘u19702000.ctfile.com大家都知道Web服务是基于HTTP协议的,而HTTP协议又是TCP协议上的应用层
Go语言从入门到精通-04| Socket客户端与服务端
可以从本号的github下载代码,shuningzhang/learn_golang电子书下载地址:shuningzhang@126.com的共享文件-城通网盘-50TB超大网盘u19702000.ctfile.com大家都知道Web服务是基于HTTP协议的,而HTTP协议又是TCP协议上的应用层
Go语言从入门到精通-05| 最简单的Web服务器
请从github下载配套代码:shuningzhang/learn_golanggithub.com电子书下载地址:shuningzhang@126.com的共享文件-城通网盘-50TB超大网盘u19702000.ctfile.com由于HTTP协议本身就是基于TCP协议的,因此,在上一篇TCP
带您进入内核开发的大门 | 内核中的线程
内核线程是直接由内核本身启动的进程。内核线程实际上是将内核函数委托给独立的进程,它与内核中的其他进程”并行”执行。内核线程经常被称之为内核守护进程。内核线程是被调度的实体,它被加入到某种数据结构中,调度程序根据实际情况进行线程的调度。内核线程与用户态线程的作用类似,通常用于执行某些周期性的计算任务,
Go语言开发必读书目,从菜鸟到大牛必备
前面介绍了一些Go语言的基础,但要想对Go语言有深入的理解,还要学习加事件才行。本号给大家推荐几本必读教程。Go语言是最近几年流行起来的语言,该语言有谷歌发明,并得到广泛的应用。Go语言最大的特点是并发支持度好,而且开发效率高。在C语言中需要几十行,上百行代码才能实现的功能,在Go语言中可能只需要几
Go语言从入门到精通-06| Web服务完善之HTML文件支持
如果觉得写的可以,请帮忙点赞,如果觉得写的不好,请在下面吐槽。谢谢!请从github下载配套代码:https://github.com/shuningzhang/learn_golang电子书下载地址:https://u19702000.ctfile.com/dir/19702000-3335779
Linux SCSI 子系统剖析
本来打算写一篇LinuxSCSI概述的文章,发现这篇文章写得非常清楚了,这里搬过来。本文作者:M.Jones原文出处:https://www.ibm.com/developerworks/cn/linux/l-scsi-subsystem/index.htmlGNU/Linux和SCSI是很好的一个
Linux中的SCSI模型及iSCSI设备发现示例
在Linux内核中SCSI驱动应该是最为复杂的驱动,没有之一。因为对于整个SCSI系统来说,不只包含一种类型的设备,而是一类设备。前面文章我们简单介绍了Linux操作系统内核中SCSI子系统的整体架构,我们这里简单回忆一下。在Linux内核中抽象了一个称谓SCSI总线的虚拟总线。而在SCSI总线上又
Go语言从入门到精通-07| Web服务完善之图片文件支持
前面我们实现的Web服务器软件只能支持静态html文件,不能支持图片等复杂的html元素。下面本文将继续完善该Web服务器软件的功能使其可以支持图片资源。通过本文,我们主要学习在Go语言中字符串相关的操作。如下图是本文实现后的效果,在浏览器中会有一个字符串及一个小房子的图片:
Go语言从入门到精通-10 | 区分Web请求类型
上一篇文章我们介绍了Go语言的map数据类型,并且通过该类型实现了对请求内容类型的处理。接下来这篇文章我们仍然使用该类型的变量,这次我们实现对请求类型的处理。所谓请求类型是指http中的PUT、GET和POST等请求类型。我们之前实现的Web服务器是比较挫的,我们没有区分请求的类型,统一认为是GET
Go语言从入门到精通-08| Web服务完善之路径参数
前面我们实现的处理都是没有参数的情况,但事情情况是请求可能会有路径参数,比如用户提交一个表单。因此在Web服务的逻辑中要有对路径参数进行解析的逻辑,以便于进行进一步的处理。
Go语言从入门到精通-09| 映射数据类型的应用
到目前为止,我们其实已经实现了一个类似Nginx的Web服务器软件模型。虽然整个软件还比较脆弱,但基本的功能已经有了,可以浏览基本的静态页面,并且可以包含图片等内容。
理解Linux操作系统中的块设备
块设备也就是存储以“块”为单位数据的设备,比较典型的如磁盘设备、光盘或者优盘。本文首先集中在磁盘设备的相关内容的分析,其它设备类型很类似,暂时不做介绍。在Windows操作系统下磁盘设备似乎是一个实实在在的设备,我们可以通过图形界面对磁盘设备进行管理。如图1是Windows下的磁盘管理界面,可以通过
进一步理解Linux操作系统的块设备
在前文《理解Linux操作系统的块设备》中我们从比较高层面(HightLevel)介绍了块设备的原理和块设备的特性。但是关于Linux操作系统块设备的实现原理可能还一知半解。本文将进一步深入的分析Linux的块设备,期望能让大家更加深入的理解块设备的实现细节。其实在Linux操作系统中可以非常方便的