- 军军小站|张军博客
拥有Linux标签的文章
Linux

鸟哥的linux私房菜——第20章 启动流程、模块管

20.1Linux启动流程分析Linux启动过程:按下开机电源后计算机硬件主动读取BIOS来加载硬件信息以及硬件系统的自我测试,之后系统会主动读取第一个可启动的设备(由BIOS设置),此时就可以读入引导加载程序(bootloader)了,引导加载程序指定使用那个内核文件来启动,并实际加载内核到内存中解压缩与执行,此时内核就能够在内存中活动,并检测所有硬件信息与加载适当的驱动程序来使主机运行,等内核检测硬件与加载驱动程序完毕后,就可以登录了。1)加载BIOS

系统 2019-08-12 09:27:29 2261

Linux

Linux C 多线程

原文:LinuxC多线程linux下C语言多线程编程#include#include#include#include#defineMAX10pthread_tthread[2];pthread_mutex_tmut;intnumber=0,i;void*thread1(){printf("thread1:I'mthread1\n");for(i=0;i

系统 2019-08-12 01:33:09 2261

Linux

Linux驱动程序框架

http://blog.csdn.net/lemon_fantasy/archive/2009/02/17/3901030.aspxLinux将所有外部设备看成是一类特殊文件,称之为“设备文件”,如果说系统调用是Linux内核和应用程序之间的接口,那么设备驱动程序则可以看成是Linux内核与外部设备之间的接口。设备驱动程序向应用程序屏蔽了硬件在实现上的细节,使得应用程序可以像操作普通文件一样来操作外部设备。1.字符设备和块设备Linux抽象了对硬件的处理,

系统 2019-08-12 01:32:55 2261

Linux

linux学习之linux百问,不断更新

1、Shell脚本中用#表示注释,相当于C语言的//注释。但如果#位于第一行开头,并且是#!(称为Shebang)则例外,它表示该脚本使用后面指定的解释器/bin/sh解释执行$chmod+xscript.sh$./script.sh2、两种执行Shell脚本的方法:$./script.sh$sh./script.sh3、一行中可以输入由分号;隔开的多个命令$cd..;ls-l4、只存在于当前Shell进程,用set命令可以显示当前Shell进程中定义的所

系统 2019-08-12 01:32:34 2261

Linux

查看局域网内所有在线用户 linux c

/*程序可以根据需要做适当的修改使用-t最好设置成5秒到10秒左右。否则将可能检测不到下面的第一种情况。1.如果局域网内一台电脑使用了应用层防火墙比如天网之类,会connect超时。对方在线2.connectsuccess连接成功,对方在线3.connectrefused拒绝连接,对方在线4.noroute连续发送5个arp请求(没有结果)和一个dns查询后(返回nxdomain),内核产生noroute的错误。对方不在线*/#include"stdio.

系统 2019-08-12 01:32:23 2261

Linux

:Linux上最优秀的数据恢复工具

不管是不是由于自己的失误,总有些时候我们存储的数据会出点问题。硬盘、固态硬盘以及移动媒介都有可能因为各种不同的原因而“丢失”掉文件。此外,有时候你可能想删除某个文件——不管是有意的还是无意的——稍后你突然意识到自己正好需要那个文件。与其因为文件丢失而抓狂,不如先试试文件恢复工具,看能不能挽回自己的损失。本文着重介绍Linux上的几个数据恢复工具。数据恢复的原理是什么?数据恢复工具都会基于一个基本的事实,那就是尽管操作系统可能认为文件已经是“删除”的了,但数

系统 2019-08-12 01:33:05 2260

Linux

Linux学习笔记3——Linux中常用系统管理命令

stat显示指定文件的相关信息,比ls命令显示内容更多who显示在线登录用户hostname显示主机名称uname显示系统信息top显示当前系统中耗费资源最多的进程ps显示瞬间的进程状态du显示指定的文件(目录)已使用的磁盘空间的总量df显示文件系统磁盘空间的使用情况free显示当前内存和交换空间的使用情况ifconfig显示网络接口信息ping测试网络的连通性netstat显示网络状态信息man命令帮助信息查询alias设置命令别名alias[别名]=[

系统 2019-08-12 01:32:54 2260

Linux

Linux学习笔记6——映射虚拟内存

使用到两个函数mmap:用于分配内存;munmap:用于释放内存。mmap的原型如下:void*mmap(void*start,//指定映射的虚拟地址0由系统指定开始位置size_tlength,//映射空间大小pagesize倍数intprot,//映射权限PROT_NONE|PROT_READPROT_WRITEPROT_EXECintflags,//映射方式intfd,//文件描述符号offset_toff//文件中的映射开始位置(必须是pagesi

系统 2019-08-12 01:32:51 2260

Linux

linux系统编程之文件与I/O(六):fcntl 函数与

一、fcntl函数功能:操纵文件描述符,改变已打开的文件的属性intfcntl(intfd,intcmd,.../*arg*/);cmd的取值可以如下:复制文件描述符F_DUPFD(long)设置/获取文件描述符标志F_GETFD(void)F_SETFD(long)设置/获取文件状态标志F_GETFL(void)F_SETFL(long)获取/设置文件锁F_GETLKF_SETLK,F_SETLKW其中复制文件描述符可参见《linux系统编程之文件与I/

系统 2019-08-12 01:32:34 2260

Linux

自己动手架设linux下Web服务器(图)3

三、置Web服务器软件组合现在,我们开始配置Web服务器需要的组件或关链组件。成功安装Linux并启动后,组件的安装顺序一般是Mysql数据库、Apache、GD库、PHP、ZendOptimizer。首先下载好相应的安装包,笔者在此下载了mysql源代码文件,以Root帐号登陆Linux服务器后,就可以安装Mysql数据库了,整个安装步骤如下:3.1安装mysql-5.0数据库#groupaddmysql#useradd-gmysqlmysql#cd/u

系统 2019-08-29 23:12:08 2259

Linux

Linux中,不Q

既然人家“一毛钱”(tencent,英语不好,哪个瓜娃起的名字?)不喜欢Linux,既不开发forlinux的版本,又不让别人代它开发的用,咱为啥子非要抱着它不放呢。QQ拒绝linux,咱linux也拒绝它。我就不信这个邪,好像没有Q就不混了。咱使用MSNMessenger,使用YahooMessenger,使用Gtalk等等。Yahoo!,Google,MSN都已加入教育网的免费地址列表了,为啥子不用呢。虽然MSN我基本不用,Google也用的不多,现在

系统 2019-08-29 22:57:41 2259

Linux

Linux内核中Kprobes调试技术的实现

内核开发者一直在试图寻找一种快捷高效的内核调试手段,用于内核开发之中。高效的调试技术有利于提高内核开发效率,缩短内核开发周期。本文研究了一种新型的内核调试技术―Kprobes,Kprobes是一个轻量级的内核调试工具,利用Kprobes技术可以在运行的内核中动态的插入探测点,在探测点处执行用户预定义的操作。本文首先根据Kprobes在Linux内核中的源码实现,针对LinuxCPU异常技术,single-step技术,LoadableKernelModul

系统 2019-08-29 22:32:54 2259

Linux

阅读和调试linux kernel0.11的窘境

这些日子一直都想通读,甚至重写一次linux0.11的内核,在黑暗中摸索的日子真是痛苦,于渊的《自己动手写操作系统》提供的调试方法,都有试过,总是感觉进展速度很慢很慢。Maybeoperatingsystemishard,butIneedtocontinue,neversaygiveitup.阅读和调试linuxkernel0.11的窘境

系统 2019-08-29 22:14:07 2259

Linux

NVIDIA-Linux-x86-180.16-pkg1 驱动的升级安装

关于Nvidia显卡驱动在Linux上面的安装,网上已经有很多的文章了。不过感觉都是只有大量的步骤,缺少的一些前因后果的描述。导致了很多朋友不能很好的针对自己系统特性进行安装。在这里我就结合我的实际体验来给大家讲一下Nvidia显卡驱动的安装。在这之前,大家务必要拢清楚自己的系统环境。我的系统环境写道Ubuntu8.04.1LinuxKernel2.6.24-22-generic#1SMPMonNov2418:32:42UTC2008i686GNU/Lin

系统 2019-08-29 22:07:17 2259

Linux

linux-2.6.32在mini2440开发板上移植(6)之W35

编者注:本移植主要步骤还是按照手册来,里面讲解了一些有用的基础知识。但书册上提供了集中屏幕的方案,我们这里主要就用一种,也就是开发板自带的W35型号。液晶驱动的源程序在src/drivers/video/目录下,主要是s3c2410fb.c这几个文件,详细的讲解可以参照《linux设备驱动开发详解》一书。对于这里的移植,一般是实现为platform形式,所以,对platform_device这个结构体,把我准确一般就可以了。移植期间遇到的一个问题,一直没搞

系统 2019-08-12 01:33:40 2259