自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

落寞微蓝

做为一个普通人,只需做好三件事:看清这世界、修炼好自己、影响身边人。

  • 博客(113)
  • 资源 (12)
  • 收藏
  • 关注

原创 linux文件系统命令(4)---ls

本文将介绍文件系统的ls命令。ls命令用来显示文件系统下的文件,可以显示简单信息、详细信息;也可以按照时间排序、大小排序。

2016-01-02 13:19:42 1157

原创 linux工作环境搭建

每次重装linux系统后都需要安装一些必要的软件,并经过配置后才能达到正常的使用状态。由于这些步骤都是重复的,并且难于记忆,因此有必要记录下来,免去一些查找资料的麻烦。

2015-11-22 20:53:55 3105

原创 linux文件系统调用(2)---umount

本文将介绍linux卸载文件系统的过程,从系统调用umount()函数开始解析,主要分为三个阶段:1、查找挂载目录下所有已挂载的文件系统;2、删除这些已挂载文件系统的挂载节点;3、释放这些已挂载文件系统的挂载点数据结构;

2014-11-24 23:07:00 4811

原创 linux文件系统调用(1)---mount

本文将介绍linux挂载文件系统的过程,从系统调用mount()函数开始解析,主要分为三个阶段:1、新建源文件系统;2、查找目的文件系统的挂载目录;3、将源文件系统挂载到目的文件系统的挂载目录;

2014-11-20 22:57:29 4636

原创 linux文件系统命令(1)---概述

linux文件系统分为4个层面:用户空间程序、系统调用、内核虚拟文件系统以及实际文件系统;本系列文章只涉及用户空间程序的操作及使用方法,旨在掌握linux文件系统的常用命令,至于文件系统的系统调用和内核实现方法等内容并不涉及。

2014-11-09 20:20:10 1213

原创 git学习(4)---工作流

前三章介绍了git工具本身的操作,主要包括本地仓库操作和远程库操作两部分内容。接下来,我们将介绍如何使用git进行项目开发,也叫做git工作流。 git工作流分为三种模式:共享远程库模式、独立远程库之github模式、独立远程库之linux模式

2014-10-26 22:49:16 1235

原创 git学习(3)---远程仓库

本文介绍了git远程库的操作,需要熟练掌握git remote相关的命令。 此外,有两点需要注意: 1、不推荐使用git pull命令,应该先使用git fetch命令同步远程库的内容到本地后,再使用git merge合入到本地仓库的分支中,这样更安全。 2、删除远程库分支的命令是git push origin :branch-name,这个命令不太容易记忆。

2014-10-24 20:31:19 1341

原创 git学习(2)---分支操作

本文将介绍git分支的操作,包括新建和删除分支、查看和切换分支、合并分支和合并冲突等内容。

2014-10-21 21:22:00 1299

原创 linux文件系统命令(6)---touch和mkdir

本文介绍了linux下的新建文件命令touch、新建目录命令mkdir和删除文件或目录命令rm。

2014-10-10 22:17:25 11660

原创 linux随笔(12)---chown和chgrp

本文介绍了linux下的chown和chgrp命令,chown用来设置文件的拥有者,chgrp用来设置文件的所属组。

2014-10-10 07:13:09 2939

原创 linux随笔(11)---umask和chmod

linux系统下文件有很多种属性,例如:文件大小、文件的拥有者、文件所属的组、文件访问模式等,其中文件访问模式属性的地位比较重要,因此重点介绍了文件访问模式的概念以及相关命令umask和chmod。 文件访问模式的表示方式有文字表示方式和八进制表示方式,应该熟练掌握。特殊属性的SUID位影响了可执行文件的执行权限,读者应该正确理解SUID的含义以及使用方法。

2014-10-07 21:50:28 2701

原创 linux文件系统命令(5)---find等查找命令

which使用环境变量查找可执行文件的路径;whereis查找可执行文件、源代码、man文件的路径;find命令能够查找文件系统中的任何文件,支持正则表达式查找;locate命令通过之前建立的索引查找文件,所以比find快,但是不适合查找最近新建或者重命名的文件。

2014-09-21 11:03:16 6179

原创 git学习(1)---基本操作

本文将介绍git的基本操作,包括基本配置、新建和修改文件、删除和重命名文件、提交和恢复操作、比较文件差异、查看日志等内容。本文涉及到的所有操作都是在Ubuntu14.04环境中进行的,git版本是1.9.1。

2014-09-20 21:53:17 1304

原创 linux文件系统命令(3)---mount和umount

mount命令负责把设备上的文件系统挂载到系统的挂载点上;umount命令负责把挂载点上的文件系统卸载掉。

2014-09-13 17:56:47 7308

原创 linux文件系统命令(2)---df和du

本文将介绍磁盘管理工具df和du的用法。df工具用来查看系统中每个分区的磁盘使用率;du工具用来查看文件系统中每个目录的大小。举个例子:df相当于windows系统中显示的C盘、D盘等磁盘使用率功能;du相当于windows系统中显示每个盘符下每个目录的大小。

2014-09-13 11:24:33 2395

原创 linux进程管理(5 完结)---进程消亡

当前进程消亡时主要做了三件大事:释放当前进程占用的资源;为当前进程的子进程重新寻找“养父”;通知当前进程的父进程,释放当前进程剩下的资源。

2014-04-30 21:52:56 2920

原创 linux系统管理(7)---screen

本文介绍了linux下常用的窗口管理工具screen,screen可以在一个物理终端上模拟多个窗口,方便用户进行多任务操作;其次,详细介绍了screen的离线功能,该功能让用户在断开screen后,可以快速找回断开前的工作状态,尤其在ssh连接的场景中很常用、也很好用。

2014-04-13 18:33:49 1738

原创 linux系统管理(6)---apt

本文介绍了linux发行版下Debian包管理软件apt套件工具。如果用户需要下载deb包,可以使用apt-get;如果用户需要查看系统中deb包信息,可以使用apt-cache;如果用户无法上网,但是有deb包的CDROM,可以使用apt-cdrom将CDROM作为软件源。

2014-04-12 12:33:30 1464

原创 linux系统管理(5)---dpkg

上一章介绍的dpkg-deb工具用来查看、解压Debian包,本章介绍的dpkg工具用来管理Debian包。dpkg-deb侧重于对单个Debian包的操作(查看、解压等操作),dpkg侧重于对系统中已安装软件的管理(安装、升级、卸载等操作)。

2014-04-11 21:42:34 1512

原创 linux进程管理(4)---进程执行

本文将讲述进程如何加载并执行一个二进制文件。 进程被创建完成后,如果需要执行自己的程序,需要做两件事情:从文件系统中读取二进制文件;识别该二进制文件的格式并加载到进程内存地址空间。

2014-04-06 20:53:21 2544

原创 linux系统管理(4)---dpkg-deb

linux系统下有两种常见的软件包管理系统Debian和RPM。 本文将介绍Debian包管理工具dpkg-deb用法,dpkg-deb是用来制作Debian包的工具,同时也可以查看、解压Debian包。 本文将选取ubuntu12.04发行版做为描述基础。

2014-03-19 21:52:55 6085

原创 linux进程管理(3)---进程创建

本文将介绍linux下创建进程的过程,不同于其他操作系统,linux创建进程的实现方式有自己的显著特点,具体的实现代码可以在kernel/fork.c中找到。 linux没有线程和进程的区别,但是父进程在创建子进程时,可以根据参数标志让子进程选择性的继承父进程的资源;如果指定子进程继承父进程的地址空间、打开的文件、文件系统、信号量等资源,那么此时的子进程就相当于父进程的“线程”。虽然linux不直接提供线程,但是通过参数标志的方式间接提供被称为“轻量级进程”的线程,显得更加灵活和简单。

2014-03-18 22:15:25 2658

原创 linux进程管理(2)---进程的组织结构

linux为了不同的进程管理目的,使用了不同的方法组织进程之间的关系,为了体现进程创建关系,使用了父子关系;为了区分进程和线程,使用了进程组;为了快速查找某个进程,使用了哈希表;为了进程调度,使用了运行队列、等待队列,将不同运行状态的进程放入不同的队列中。

2014-03-17 22:15:35 4400 1

原创 linux进程管理(1)---进程描述符

linux支持多进程特性,可以最大化的使用cpu资源;用户可以在同一个cpu上运行多个用户程序。多进程的原理是:时钟中断触发进程调度程序,调度程序分时运行多个进程。这就要求每个进程能够保留现场信息(cpu现场、系统资源、调度信息等)。

2014-03-13 22:55:19 7032

原创 linux系统管理(3)---runlevel

linux系统有运行级别的概念,不同的运行级别就是不同服务的组合,从而完成不同的系统用途。例如,运行级别3会启动httpd,系统提供web server服务;运行级别1会关闭网络服务,系统仅提供基本的使用环境。通过运行级别,用户就可以灵活的控制系统提供的各种服务组合。

2014-03-02 15:00:35 6416 1

原创 linux文件系统初始化过程(6 完结)---执行init程序

内核加载完initrd文件后,为挂载磁盘文件系统做好了必要的准备工作,包括挂载了sysfs、proc文件系统,加载了磁盘驱动程序驱动程序等。接下来,内核跳转到用户空间的init程序,由init完成创建磁盘设备文件、加载磁盘文件系统、从rootfs切换到磁盘根文件系统等工作。 由于在不同的linux发行版中,init的实现方式差异很大,不能将所有的发行版都分析一遍,因此本文选取ubuntu12.04发行版来描述如何从rootfs切换到磁盘根文件系统。

2014-02-28 21:30:02 4631 1

原创 linux系统管理(2)---查看硬件信息

本文将介绍如何查看系统的硬件配置。由于涉及到的硬件设备比较多,不能一一详解,因此本文采取从总线、设备和驱动模块三方面讲述。

2014-02-17 22:14:29 2768

原创 linux系统管理(1)---man

在linux的使用过程中,如果忘记某个命令的使用方法或者某个接口函数的定义,我们一般都会使用man命令;man是manual的缩写,man命令是linux在线帮助文档的接口;熟练掌握man命令可以帮助我们提升使用linux的能力。 本文将详细介绍man命令的使用方法相关内容。

2014-02-09 21:53:57 2682 2

原创 linux文件系统初始化过程(5)---加载initrd(下)

linux把文件分为常规文件、目录文件、软链接文件、硬链接文件、特殊文件(设备文件、管道文件、socket文件等)几种类型,分别对应不同的新建函数sys_open()、sys_mkdir()、sys_symlink()、sys_link()、sys_mknod()。 系统初始化阶段成功加载initrd后,调用这些接口函数创建各种文件,因此这些函数在linux文件系统初始化过程中起到了重要作用,本文将详细描述这些接口函数的实现过程。 这些接口函数主要在fs/namei.c、fs/open.c文

2014-02-09 17:06:09 4767

原创 linux文件系统初始化过程(4)---加载initrd(中)

上文详细介绍了CPIO格式的initrd文件,本文从源代码角度分析加载并解析initrd文件的过程。 initrd文件和linux内核一般存储在磁盘空间中,在系统启动阶段由bootload负责把磁盘上的内核和initrd加载到指定的内存空间中;然后,再由内核读取和解析initrd文件,在VFS(目前只有rootfs的根目录)中新建目录、常规文件、符号链接文件以及特殊文件;这样VFS就从根目录"/"成长为一棵枝繁叶茂的大树了。

2014-01-15 23:01:51 5312

原创 linux文件系统初始化过程(3)---加载initrd(上)

本文主要讲述linux3.10文件系统初始化过程的第二阶段:加载initrd。 initrd是一个临时文件系统,由bootload负责加载到内存中,里面包含了基本的可执行程序和驱动程序。在linux初始化的初级阶段,它提供了一个基本的运行环境。当成功加载磁盘文件系统后,系统将切换到磁盘文件系统并卸载initrd。 如果是嵌入式设备,那么最终的文件系统就是initrd。

2014-01-12 12:00:25 4692

原创 linux系统调用

linux在syscalls.h中声明了所有的系统调用函数,例如:sys_rmdir()等。但是,我们却无法直接找到sys_rmdir()的定义。这是因为linux没有直接定义sys_rmdir(),而是使用了SYSCALL_DEFINE宏间接定义了系统调用函数。 本文介绍linux3.10通过宏SYSCALL_DEFINE生成系统调用函数的方法。

2014-01-07 22:28:24 2323

原创 linux文件系统初始化过程(2)---挂载rootfs文件系统

本文主要讲述linux3.10文件系统初始化过程的第一阶段:挂载rootfs文件系统。 rootfs是基于内存的文件系统,所有操作都在内存中完成;也没有实际的存储设备,所以不需要设备驱动程序的参与。基于以上原因,linux在启动阶段使用rootfs文件系统,当磁盘驱动程序和磁盘文件系统成功加载后,linux系统会将系统根目录从rootfs切换到磁盘文件系统。

2014-01-05 23:02:11 22145 1

原创 linux文件系统初始化过程(1)---概述

linux文件系统主要分为三个部分:文件系统调用;虚拟文件系统(VFS);挂载到VFS的实际文件系统。 其中,VFS是核心,linux文件系统的本质就是在内存中创建一棵VFS树。当根目录被创建后,用户就可以使用系统调用在VFS上创建文件、删除文件、挂载各种文件系统等操作。 该系列文章主要分析linux3.10文件系统初始化过程,分为三个阶段: 1、挂载根文件系统(rootfs); 2、加载initrd; 3、挂载磁盘文件系统;

2014-01-04 21:30:36 8792 2

转载 30 Linux Kernel Developers in 30 Weeks: Arnd Bergmann

Linux kernel developer Arnd Bergmann is interviewed for this week's 30 Linux Kernel Developers in 30 Weeks profile. Bergmann shares with us his focus areas at the moment as well as some specific adv

2013-01-01 11:00:38 840

转载 30 Linux Kernel Developers in 30 Weeks: Alan Cox

In this week's 30 Linux Kernel Developers in 30 Weeks profile, we talk to Alan Cox. We learn how he originally got involved in Linux and why it remains important to him. He also gives us a bit of mu

2013-01-01 10:53:13 841

转载 30 Linux Kernel Developers in 30 Weeks: Paul Mundt

In this week's 30 Kernel Developers in 30 Weeks profile, we talk to Paul Mundt, who works on the SuperH architecture and core parts of the AMR-based SH/R-mobile platforms. He shares a variety of sto

2012-12-30 10:49:39 746

转载 30 Linux Kernel Developers in 30 Weeks: Dave Jones

Dave Jones is maintainer of the Fedora kernel and this week shares what he's working on and what makes him tick in our latest entry in the 30 Linux Kernel Developers in 30 Weeks series. You can see al

2012-12-30 10:48:31 841

转载 30 Linux Kernel Developers in 30 Weeks: Greg Kroah-Hartman

This week we talk to Linux stable kernel maintainer and Linux Foundation Fellow Greg Kroah-Hartman. This is the fifth profile in our 30-week series that shares the stories of 30 Linux kernel develop

2012-12-30 10:45:16 841

转载 30 Linux Kernel Developers in 30 Weeks: Jean Delvare

This is the fourth profile in our 30-week series that features a different Linux kernel developer each week. Last week we featured Linux kernel xHCI driver maintainer Sarah Sharp. You can see all th

2012-12-30 10:41:24 792

SAS3008芯片资料

Broadcom公司的SAS3008芯片(PCIE总线接口转SATA总线接口)介绍手册。

2018-11-17

Vim常用插件和帮助文档

Vim常用插件和Vim配置文件,以及帮助文档.

2011-03-21

Vim的.vim文件夹和.vimrc配置文件

vim常用插件以及.vimrc文件的常用配置

2011-03-21

programming with Vim

这本书是CSDN上一位网友的经典Vim的配置手册。 里面详细讲解了怎样把Vim配置成高效的IDE。

2010-03-18

understanding the linux kernel(3rd) 英文版

这本书是研究linux工作原理的难得的好书。 很适合那些想要研究linux内核工作机制的朋友。 欢迎下载。

2010-03-18

make使用手册,轻松学习make的使用。

make程序的使用手册。 make的详细使用说明,通过这本手册你可以学到最全面的make使用方法,可以让你更好的掌握make这个神奇的工具。

2009-11-16

ubuntu server常用配置方法

本文档是ubuntu server常用的网络配置方法和安装gcc的方法,以及更新源。

2009-10-14

MFC类库详解,windows编程

学习MFC不可缺少的书籍啊,一定得好好利用!

2008-10-31

无线网络发现软件NetStumbler

一个可以随时随地的找到你身边的无线网络的软件。

2008-10-31

制作pdf文件的工具

一个制作pdf文件的工具,自己可以轻松制作pdf文档。

2008-10-31

matlab的资料

感觉学习Matlab不错的资料

2008-05-09

空空如也

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

TA关注的人

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