Linux内核实验
在摸索中前进
计算机软件的入门水平,希望不断进步。
展开
-
linux内核编程实验三
内核的定时机制实验问题 A 使用ITIMER_REAL型定时器实现一个gettimeofday(),将它设置为每秒产生一个信号, 并计算已经经过的秒数。 问题 B 使用以上实现的 gettimeofday()实现一个精确到微秒级的“壁钟”。 问题 C 实现以上一个父进程和两个子进程并发递归计算不同项数的fibonacci序列的程序, 分析每个进程三种类型定时器测出的时间关系。原创 2016-04-25 20:57:21 · 2874 阅读 · 1 评论 -
将/proc/uptime文件中的数转化成long然后转成日期
思路: 1、格式化读取文件中两个数,保存在两个字符串中。 2、/proc/uptime中表示秒,舍弃小数。将整数部分转为long。 3、由long转日期。#include <stdio.h>int main(){ FILE *fp = NULL; fp = fopen("uptime.c", "r"); if(fp == NULL) { pri原创 2016-04-14 21:39:40 · 3830 阅读 · 0 评论 -
tar 解压缩命令详解
转载地址:http://blog.chinaunix.net/uid-1840233-id-3147304.html今天对目录及其文件进行压缩:/usr/local/test# tar -cvf /usr/local/auto_bak/test.tar /usr/local/test仅打包,不压缩# tar -zcvf /usr/local/auto_bak/t转载 2016-05-26 12:23:20 · 2534 阅读 · 0 评论 -
linux内核4.2.x实现自定义系统调用
前言:内核2.xx | 3.xx | 4.xx在添加系统调用时,需要的步骤大体相同。但是由于内核版本的变动,有些步骤的做法发生改变。网上的教程多是关于2.xx | 3.xx版本的。有些地方在4.xx版本上不相符。以下内容均以4.2.1版本为例子,基于Ubuntu虚拟机,64位PC。首先,给出几个关键的路径:/usr/src/linux-4.2.1/arch/x86/in原创 2016-05-26 16:21:01 · 4393 阅读 · 1 评论 -
Linux内核源码目录介绍
转载地址:http://blog.chinaunix.net/uid-12814440-id-2914679.html· Arch :arch子目录包括了所有和体系结构相关的核心代码。它的每一个子目录都代表一种支持的体系结构,例如i386就是关于intel cpu及与之相兼容体系结构的子目录。PC机一般都基于此目录; · Include: include子目录包括编译核转载 2016-05-26 16:24:06 · 2802 阅读 · 0 评论 -
实现自己的shell框架
#include<sys/types.h> //系统基本数据类型#include<sys/wait.h> //waitpid()#include<unistd.h> //execvp()while(1){ type_prompt(); //输出命令提示符 read_command(command,parameters); //读命令处理命令 if(fork() == 0原创 2016-04-20 20:04:51 · 3733 阅读 · 0 评论 -
自己实现简单shell的小例子
#include <stdio.h>#include <stdlib.h>#include <string.h>#include <unistd.h> //execve()#include <sys/types.h> //pid_t#include <sys/wait.h> //waitpid()int main(){ int i, j, l, status; pid_t原创 2016-04-20 20:16:16 · 3090 阅读 · 0 评论 -
Linux内核编程实验二
1、实验名称:shell命令解释系统设计实验 2、实验要求: 问题 A: 实现一个能处理前后台运行命令的 shell。 问题 B: 实现一个带有管道功能的 shell。 问题 C: 实现一个能处理 I/O 重定向的 shell。 问题 D: 实现一个能在一行上处理多条命令的 shell。 将问题 A-D 集中到一个 shell 解析程序中。3、解决思路4、实现代码5、程序的健壮性原创 2016-04-20 20:56:39 · 2820 阅读 · 0 评论 -
linux内核编程实验一
问题 A : 1、提取cpu 类型 2、提取内核版本 问题 B: 1、启动以来经历的时间,以 dd:hh:mm:ss 报告 问题 C: 1、cpu 执行用户态、系统态、空闲态所用时间 2、多少次磁盘请求 3、多少次上下文切换 4、启动了多少次进程 实验问题 D: 1、内存总量 2、可用内存 3、系统平均负荷解决问题A: 1、读取文件/proc/cpuinfo,并且将结果显原创 2016-04-24 16:48:06 · 3182 阅读 · 0 评论