自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(266)
  • 资源 (1)
  • 收藏
  • 关注

原创 linux命令(二)uname命令

uname命令 uname命令是linux的命令,用于输出系统信息。命令参数 命令用于打印某些系统信息。当没有参数时,输出结果与-s参数一样。 -a, --all 以如下次序输出所有信息。其中若-p 和 -i 的探测结果不可知则被省略: -s, --kernel-name 输出内核名称 -n,

2016-04-01 19:34:56 350

原创 ubuntu操作系统安装(二) 十六进制编辑器tweak

(本操作系统为ubuntu kylin 14.01 32位操作系统。以下使用ubuntu代替ubuntu kylin 14.01 32位操作系统。)ubuntu安装完成后,第一次运行需要安装一些软件。十六进制编辑器 文本编辑器可以查看,编辑文本文件,而十六进制编辑器可以以十六进制的方式查看以及编辑文件。tweaktweak是可以在命令行方式下使用的十六进制编辑器。安装sudo apt-get i

2016-03-25 12:52:11 852

原创 ubuntu操作系统安装(二) 转码

(本操作系统为ubuntu kylin 14.01 32位操作系统。以下使用ubuntu代替ubuntu kylin 14.01 32位操作系统。)ubuntu安装完成后,第一次运行需要安装一些软件。转码 ubuntu下使用的是utf-8编码,而windows下默认的是gbk编码,在两个操作系统间传送文本文件,会产生乱码现象,需要进行转码。 ubuntu下可以安装enca命令进行转码。安装su

2016-03-25 11:54:57 336

原创 操作系统项目(一)安装qemu

qemuqemu是一套由法布里斯·贝拉(Fabrice Bellard)所编写的以GPL许可证分发源码的模拟处理器,在GNU/Linux平台上使用广泛。Bochs,PearPC等与其类似,但不具备其许多特性,比如高速度及跨平台的特性,通过KQEMU这个闭源的加速器,QEMU能模拟至接近真实电脑的速度。下载ubuntu下不能使用apt-get命令直接安装qemu,需要自己下载,编译。 可以从qemu

2016-03-15 20:06:13 1338

原创 ubuntu命令(一) 获取源码

(本操作系统为ubuntu kylin 14.01 32位操作系统。以下使用ubuntu代替ubuntu kylin 14.01 32位操作系统。)ubuntu linux下存在大量的命令,而许多命令都可以下载其源码包。 而ubuntu下可以通过apt-get命令轻易获取命令源码。查找命令所在源码包 以ls命令来看,搜索命令所在源码包。#which ls/bin/ls用命令搜索该软件所在

2016-03-15 19:00:42 1881

原创 ubuntu操作系统安装(三)修改输入法

(本操作系统为ubuntu kylin 14.01 32位操作系统。以下使用ubuntu代替ubuntu kylin 14.01 32位操作系统。)ubuntu安装完成后,第一次运行需要修改一些配置。输入法ubuntu提供了几种输入法,但默认的只有 键盘-英语,只能输入中文。需要添加其他输入法。而ubuntu下可以添加搜狗拼音。一、首先打开ubuntu设置(右上角的键盘),如下图所示。 二、然后点

2016-03-14 12:13:45 530

原创 ubuntu操作系统安装(三)修改系统语言

(本操作系统为ubuntu kylin 14.01 32位操作系统。以下使用ubuntu代替ubuntu kylin 14.01 32位操作系统。)ubuntu安装完成后,第一次运行需要修改一些配置。语言 ubuntu默认语言是英语,需要修改为中文。一、首先打开ubuntu设置(右上角的齿轮),或者直接在左面找到设置,如下图所示。二、然后点【language support】设置,如下图所示。三、

2016-03-14 11:52:06 492

原创 Debian操作系统安装(二) VMware安装

下载首先,下载虚拟机(VMware Workstation 12 Player for Linux 64-bit)安装下载后会得到软件包VMware-Player-12.0.0-2985596.x86_64.bundle,为其添加执行权限,并运行。chmod u+x VMware-Player-12.0.0-2985596.x86_64.bundlesudo ./VMware-Player-12.

2016-03-13 17:11:23 371

原创 ubuntu操作系统安装(三) 添加sudo用户

(本操作系统为ubuntu kylin 14.01 32位操作系统。以下使用ubuntu代替ubuntu kylin 14.01 32位操作系统。)ubuntu安装完成后,第一次运行需要修改一些配置。sudosudo是linux系统管理指令,是允许系统管理员让普通用户执行一些或者全部的root命令的一个工具。如果未安装sudo命令,可以执行下面命令完成安装。apt-get install sudo

2016-03-13 16:48:45 4076

原创 ubuntu操作系统安装(三) 更改软件源

(本操作系统为ubuntu kylin 14.01 32位操作系统。以下使用ubuntu代替ubuntu kylin 14.01 32位操作系统。)ubuntu安装完成后,第一次运行需要修改一些配置。软件源 ubuntu下可以通过apt-get命令轻松的安装软件,而apt-get安装软件需要搜索互联网的软件仓库。搜索的方式就是读取软件源文件中的网址。命令行修改打开软件源文件sudo vi /et

2016-03-13 16:23:25 794

原创 ubuntu操作系统安装(二) curses

(本操作系统为ubuntu kylin 14.01 32位操作系统。以下使用ubuntu代替ubuntu kylin 14.01 32位操作系统。)ubuntu安装完成后,第一次运行需要安装一些软件。curses curses库是UNIX下的一套专门用来处理终端界面下的光标移动以及屏幕显示的一个函数库。安装 ubuntu下安装curses十分方便。sudo apt-get install li

2016-03-13 16:17:17 2158

原创 Debian操作系统安装

(本文描述操作系统为debian 8.2.0 64位操作系统。以下使用debian代替debian 8.2.0 64位操作系统)下载 首先需要下载ubuntu操作系统iso映像文件。 ubuntu kylin官网下载Win32DiskImager软件 下载完iso映像文件后,需要将iso映像文件写入u盘。使用u盘将操作系统安装到计算机。 windows下可以使用Win32DiskImager

2016-03-12 18:51:23 387

原创 操作系统项目(一)安装Bochs

Bochs内核编译完成后,可以使用Bochs虚拟机来加载内核。下载Bochs2.6从以下地址处下载bochs-2.6.tar.gz。 http://sourceforge.net/projects/bochs/files/bochs/2.6/安装前的准备安装Bochs前,先下载5个软件,否则make,make install时会出错。sudo apt-get install build-essen

2016-03-12 13:22:34 412

原创 ubuntu操作系统安装(三) 更改软件源

(本操作系统为ubuntu kylin 14.01 32位操作系统。以下使用ubuntu代替ubuntu kylin 14.01 32位操作系统。)ubuntu安装完成后,第一次运行需要修改一些配置。软件源 ubuntu下可以通过apt-get命令轻松的安装软件,而apt-get安装软件需要搜索互联网的软件仓库。搜索的方式就是读取软件源文件中的网址。命令行修改打开软件源文件sudo vi /et

2016-03-12 12:57:32 419

原创 ubuntu操作系统安装(二) ctags

(本操作系统为ubuntu kylin 14.01 32位操作系统。以下使用ubuntu代替ubuntu kylin 14.01 32位操作系统。)ubuntu安装完成后,第一次运行需要安装一些软件。ctags windows下阅读代码有source insight软件。source insight软件可以建立源码树的索引,使程序员在编程时能迅速定位函数、变量、宏定义等位置去查看原形,十分方便与学

2016-03-12 12:37:38 299

原创 操作系统项目(一)编译内核源码

下载完内核就可以对内核源代码编译了。本文描述的内核源码为2.6.30.1版本。解压tar jxf linux-2.6.30.1.tar.xzcd linux-2.6.30.1/生成基本的配置信息make defconfig配置使用menuconfig进行配置sudo apt-get install libncurses5-devmake menuconfig错误排除1.出现错误syscal

2016-03-10 18:48:31 849

原创 操作系统项目(一)获取内核源码

linux内核源码linux是开源项目,其内核源代码也可以从网络中获取。linux kernel内核下载列表 可以从上面的网址下载各个版本的linux内核。apt-get还可以通过apt-get命令获取当前操作系统对应的内核源码。查看内核版本apt-cache search linux-source获取对应版本的内核,默认安装在/usr/src目录下apt-get install linu

2016-03-09 19:14:34 765

原创 ubuntu操作系统安装(二) git

(本操作系统为ubuntu kylin 14.01 32位操作系统。以下使用ubuntu代替ubuntu kylin 14.01 32位操作系统。)ubuntu安装完成后,第一次运行需要安装一些软件。git git是linux下的一款版本管理工具。平常我需要用git来管理一些代码和一些资料。 所以,需要在ubuntu下安装git工具。安装 ubuntu下安装git十分方便。sudo apt-g

2016-03-07 20:04:08 369

原创 ubuntu操作系统安装(二) Markdown

(本操作系统为ubuntu kylin 14.01 32位操作系统。以下使用ubuntu代替ubuntu kylin 14.01 32位操作系统。)ubuntu安装完成后,第一次运行需要安装一些软件。Markdown编辑器 写博客时用到Markdown编辑器,所以在ubuntu下了个Markdown编辑器—Haroopad。 Haroopad是ubuntu下的一款markdown编辑器。下载

2016-03-07 19:45:18 793

原创 ubuntu操作系统安装(二) ftp

(本操作系统为ubuntu kylin 14.01 32位操作系统。以下使用ubuntu代替ubuntu kylin 14.01 32位操作系统。)ubuntu安装完成后,第一次运行需要安装一些软件。ftp服务器 ubuntu操作系统安装后,需要与其他计算机交互,需要安装ftp服务器。 vsftpd是开源的轻量级的常用ftp服务器。安装安装vsftpd服务器 (约400KB)sudo apt-g

2016-03-07 19:40:43 346

原创 ubuntu操作系统安装(二) gvim

(本操作系统为ubuntu kylin 14.01 32位操作系统。以下使用ubuntu代替ubuntu kylin 14.01 32位操作系统。)ubuntu安装完成后,第一次运行需要安装一些软件。Gvim编辑器安装 vim编辑器安装后,还需要安装图形界面下的vim编辑器-gvim。sudo apt-get install vim-gtk配置 gvim的配置与vim的配置方式是一样的,都是使

2016-03-07 19:38:27 410

原创 ubuntu操作系统安装(二) vim

(本操作系统为ubuntu kylin 14.01 32位操作系统。以下使用ubuntu代替ubuntu kylin 14.01 32位操作系统。)ubuntu安装完成后,第一次运行需要安装一些软件。vim编辑器安装 首先是编辑器,平常习惯使用vim编辑器,但ubuntu默认的vi命令调用的是vi编辑器,所以需要安装vim编辑器。sudo apt-get install vim配置 vim安装

2016-03-07 19:34:59 339

原创 ubuntu操作系统安装

(本文描述操作系统为ubuntu kylin14.04.4 32位操作系统。以下使用ubuntu代替ubuntu kylin14.04.4 32位操作系统。)下载 首先需要下载ubuntu操作系统iso映像文件。 ubuntu kylin官网下载UltraISO软件 下载完iso映像文件后,需要将iso映像文件写入u盘。使用u盘将操作系统安装到计算机。 windows下可以使用UltraIS

2016-03-07 19:34:18 369

原创 树莓派2 ubuntu mate安装

树莓派2 安装了新的操作系统ubuntu mate,与wheezy-raspbian相比界面更加华丽,但内存也占用更多。 ubuntu mate 占用内存446MB wheezy-raspbian 占用内存160MB 不过树莓派2的内存有1GB,少去的内存相比于界面的华丽是也值得的。 树莓派2的ubuntu mate界面与

2016-02-28 15:48:27 1622

原创 系统调用的封装

封装系统调用是一件简单而枯燥的事情封装系统调用的基本过程是: 1. 确认要封装的系统调用,并将系统调用对应的系统调用名称设置为函数的名称。 如系统调用号1对应的系统调用exit封装的函数的名字便是exit。 2. 确认要封装的系统调用的参数及参数类型,并设置为函数的参数。 如exit系统调用的参数为int status,则exit函数参数为int status

2016-02-28 11:24:49 942

原创 关于系统调用(二)

怎么用?(实践性) 以x86体系下linux内核为例正如《系统调用一》里所讲,执行系统调用只有3个步骤:选系统调用号,传入系统调用参数,执行特权指令。只要正确的执行这3个步骤便可以完成对所有系统调用的执行。3个步骤简单明了,但实现却纷繁复杂。本文以下内容将以原始,进阶,高阶,三个阶段去了解怎么调用系统调用。三个阶段都能完成系统调用的执行,但抽象程度一个比一个高,实际中的使用程度也一个比一个高。开始

2016-02-22 20:22:45 359

原创 关于系统调用(一)

1. 什么是系统调用?系统调用也叫做操作系统接口,是操作系统提供给应用程序的一组接口。应用程序执行特权指令切入内核,执行操作系统内核中的代码。本质 本质上系统调用是一个函数列表,执行系统调用就像调用函数。传入参数,调用,取返回值。不过该函数列表存在于内核空间,用户能调用,却并不知道调用过程发生了什么。用户调用依赖的是系统调用的功能描述。也就是说,用户只需知道该系统调用能干什么,然后当需要该功

2016-02-19 16:38:11 561

原创 clock_settime(系统调用)

clock_settime系统调用可以设置系统时间秒数与纳秒数。 #include <time.h> int clock_settime(clockid_t clk_id, const struct timespec *tp);clockid_t clk_id 用于指定计时时钟的类型,有以下4种: CLOCK_REALTIME:系统实时时间,随系统实时时间改变而改变,即

2016-02-05 15:55:23 11573

原创 ftime(系统调用)

ftime系统调用可以获取系统的秒数与毫秒数。但是在linux内核中并未实现该系统调用,所以调用的话,会返回错误码。不过可以使用gettimeofday来获取微秒数,并/1000来算出毫秒数。#include <sys/timeb.h>int ftime(struct timeb *tp);struct timeb{ time_t time; /* 为1970-01-01至今的秒数*/

2016-02-05 12:18:10 541 1

原创 获取/设置时间的系统调用的几个思考

1.为什么存在这么多获取,设置时间的系统调用? 获取/设置时间的系统调用可分为4个类型:秒数,秒数加上毫秒数,秒数加上微秒数,秒数加上纳秒数。 4个类型其实可以只用秒数加上纳秒数就完成。但存在问题: 可以获取纳秒数的设备每台机器不一定存在。 获取纳秒数需要对硬件访问,与获取秒数相比,需要更久的时间 。2.time系统调用为什么返回时间值? time_t time(time

2016-02-04 19:26:01 610

原创 settimeofday(系统调用)

settimeofday系统调用可以设置系统的秒数,以及微秒数。需要超级用户权限才能执行。#include <sys/time.h>int settimeofday(const struct timeval *tv, const struct timezone *tz);返回值:出错返回-1,错误码放在errno中,正确返回0.

2016-02-04 18:53:51 5305

原创 stime(系统调用)

系统调用stime可以设置系统的时间,不过需要超级用户的权限。#include <time.h>int stime(time_t *t);返回值: 出错返回-1,错误码放在errno中,成功则返回0

2016-02-04 18:47:49 2518

原创 time(系统调用)

系统调用 time 可以获取系统时间(秒数)。#include <time.h>time_t time(time_t *t);执行系统调用time,可以获取系统时间,系统时间将写入t指针指向的内存处,并将系统时间作为返回值。

2016-02-01 19:03:07 1684

转载 linux下常用的几个时间函数:time,gettimeofday,clock_gettime,_ftime

time()提供了秒级的精确度    1、头文件   2、函数原型  time_t time(time_t * timer)   函数返回从TC1970-1-1 0:0:0开始到现在的秒数    用time()函数结合其他函数(如:localtime、gmtime、asctime、ctime)可以获得当前系统时间或是标准时间。   #include   #include   int main(vo

2016-01-31 16:44:51 1224

原创 clock_gettime(系统调用)

linux中可以使用clock_gettime系统调用来获取系统时间(秒数与纳秒数)。 纳秒为一秒的十亿分之一。#include <time.h>int clock_gettime(clockid_t clk_id, struct timespec *tp); clockid_t clk_id 用于指定计时时钟的类型,有以下4种: CLOCK_REALTIME:

2016-01-31 16:42:48 4794

原创 gettimeofday(系统调用)

linux中可以使用gettimeofday系统调用来获取系统时间(秒数与微秒数)。#include <sys/time.h>int gettimeofday(struct timeval *tv, struct timezone *tz);struct timeval { time_t tv_sec; /* 获取的秒数 */ suseconds_t tv_use

2016-01-31 16:11:41 1827

原创 acct(系统调用)

acct系统调用可用于启动/禁止进程信息记录功能。#include <sys/acct.h>int acct(char *filename);成功则返回0,出错返回-1,,错误类型在errno中。在进程记账开启之后,每当系统内有进程终止内核将写一个记录到记账文件。这个记录包含已经终止进程的信息,它定义在头文件 #define ACCT_COMM 16typedef u_int16_t comp_t

2016-01-31 12:52:00 2107

转载 Raspberry Pi手把手教你在树莓派上安装USB无线网卡支持WIFI

树莓派虽然已经有了有线网卡,但是并未配置无线网卡,移动性不够强,好在机器配备了2个USB口,当然要分一个出来给WIFI无线网卡使用了,这样小派使用起来就更便利了! 我手头有个NetCore磊科NW336无线网卡,非常便宜的那种,好像芯片是Realtek的,插入USB口试试,发现网卡上的指示灯会闪烁,感觉有戏,马上登陆系统折腾:(一)查看USB设备类型,寻找USB无线网卡是否已经被系统识别。运行ls

2016-01-26 18:56:49 18337 1

原创 linux1.0内核编译为elf文件格式,导致无法运行

今天,在编译运行linux1.0内核时遇到问题: 程序读取的数据不在应该的位置,结果发现原因在于在我的ubutun上编译的文件格式是elf,elf的数据段与只读数据段之间存在1KB数据的差异,但在可执行文件中数据是连在一起的,也就是加载elf文件时需要将数据段与只读数据分开,但bootsect程序只是把内核连续加载的内存中,这导致了问题。 查找解决办法时,开始希望用ld生成a.out格式的可执行

2015-12-11 18:33:43 700

原创 objdump反汇编

objdump反汇编

2015-12-11 15:09:49 2345

linux系统调用

介绍linux系统调用,主要是0.01内核的代码

2015-10-06

空空如也

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

TA关注的人

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