操作系统

CPU指令的流水线运行

指令集是CPU体系架构的重要组成部分。C语言的语法是对解决现实问题的运算和流程的方法的高度概况和抽象,其主要为算术、逻辑运算和分支控制,而指令集就是对这些抽象的详细支持,汇编仅仅只是是为了让开发者更好地记住指令,但它跟CPU所认的机器码事实上是一一相应的,因此汇编也是低级语言。CPU的指令运行一般包含取指、译码和运行,这是经典的三级指令运行流水线,教科书上往往以这三种过程来描写叙述,arm7也是。可是现代的CPU设计往往使用更广泛使用的5级流水线,也就是分

系统 2019-08-12 01:33:31 2470

Linux

轻松学习Linux之内核编译

欢迎大家给我投票:http://2010blog.51cto.com/350944650)this.width=650;"onclick="window.open("http://blog.51cto.com/viewpic.php?refimg="+this.src)"border="0"alt="轻松学习Linux之内核编译_第1张图片"src="http://img.it610.com/image/product/056c6b3c2f4f47f68d

系统 2019-08-12 01:33:11 2470

Linux

《Linux内核修炼之道》精华分享与讨论(12)—

推荐博文:Linux内核“问题门”——学习问题、经验集锦推荐下载:《Linux内核修炼之道》精华版之方法论设备模型拍得再玄幻,它也只是个模型,必须得落实在具体的子系统,否则就只能抱着个最佳技术奖空遗恨。既然前面已经以USB子系统的实现分析示例了分析内核源码应该如何入手,那么这里就仍然以USB子系统为例,看看设备模型是如何软着陆的。内核中USB子系统的结构我们已经知道了USB子系统的代码都位于drivers/usb目录下面

系统 2019-08-29 21:57:40 2469

操作系统

进程地址空间(二)

#include#include#includeusingnamespacestd;#defineWIDTH40intBSS_global_uninit_a;intBSS_global_uninit_b;intstaticBSS_global_uninit_static_a;intstaticBSS_global_uninit_static_b;intDS_global_init_a=1;intDS

系统 2019-08-12 01:33:49 2469

Linux

Linux中subversion(SVN)整合apache安装及配置

本安装环境为:opensuse12.1所需安装包:httpd-2.4.3.tar.gzsubversion-1.7.6.tar.gzopenssl-1.0.1c.tar.gzneon-0.29.6.tar.gzpcre-8.20.tar.gz注:其中红色字体标识的为必须要,蓝色字体标识的为一些扩展包或者依赖包(要试情况下载安装)当前我所用的是普通用户安装,并不是用的root用户第一部分:安装①.安装apache:1.tar-zxvfhttpd-2.4.3.

系统 2019-08-29 23:13:16 2468

Linux

Ubuntu Linux 3D桌面完全教程,显卡驱动安装方

UbuntuLinux3D桌面完全教程,显卡驱动安装方法,compiz特效介绍,常见问题解答。本教程的前身是一善鱼编写并发布在Ubuntu中文论坛forum.ubuntu.org.cn3D桌面版块的:“图解Ubuntu8.10和8.04最简便的显卡驱动安装和3D桌面启用方法,compizfusion常见问题解答”Ubuntu9.04版发布后,本教程加入了更详细的内容和图片,希望能帮助朋友们体验到Linux的乐趣。本文也已经录入本站Wikihttp://wi

系统 2019-08-29 22:34:27 2468

Linux

linux下的RPM文件是什么东西?

RPM是RedHatPackageManager(RedHat软件包管理工具)类似Windows里面的“添加/删除程序”rpm执行安装包二进制包(Binary)以及源代码包(Source)两种。二进制包可以直接安装在计算机中,而源代码包将会由RPM自动编译、安装。源代码包经常以src.rpm作为后缀名。常用命令组合:-ivh:安装显示安装进度--install--verbose--hash-Uvh:升级软件包--Update;-qpl:列出RPM软件包内的

系统 2019-08-12 01:33:14 2468

操作系统

随记一个C的毫秒级群PING

正好公司为了检测前台网络,力图收集有力证据与某CDNPK,所以随手写了一个群PING的程序。写的内容比较简单,没有去特别追求线程效率,也没有去用LINUX2.6+的殿堂级神器,以追求实现效率为主,一些参数大家可以自己调。同事后来帮忙补了些日志处理,当然如果有兴趣的,还可以直接与AS3做SOCKET展示。大致的源码如下:#LinuxREHL6,x64,4C/32G,GCC#defineMAXTD2#include#include

系统 2019-08-12 01:32:31 2468

Linux

linux shell 数组的长度计算、修改、循环输出等

From:http://blog.csdn.net/snrqtdhuqf/article/details/7242309在shell中,数组变量的赋值有两种方法:(1)name=(value1...valuen)此时下标从0开始(2)name[index]=valueexample:#!/bin/sh#arrayTestname=(yunixyhxyfj)echo"arrayis:${name[@]}"echo"arraylengthis:${#name[

系统 2019-08-12 01:32:52 2467

Linux

关于linux内核学习

常常有人问:我想学习内核,需要什么基础吗?LinusTorvalds本人是这样回答的:你必须使用过Linux。这个……还是有点太泛了吧,我想下面几个基础可能还是需要的,尽管不一定必需:1,关于操作系统理论的最初级的知识。不需要通读并理解《操作系统概念》《现代操作系统》等巨著,但总要知道分时(time-shared)和实时(real-time)的区别是什么,进程是个什么东西,CPU和系统总线、内存的关系(很粗略即可),等等。2,关于C语言。不需要已经很精通C

系统 2019-08-12 01:32:49 2467

Linux

Google进军手机力挺Linux

手机无疑是继PC以后,最有市场潜力的终端,所有IT(甚至还有家电)制造商都不希望再犯当年IBM和APPLE对PC的判断失误。Google作为Nasdaq第一高价股,在资本市场的风光无限缘于其源源不断的创新能力,以及对既有技术垄断的挑战。大家都知道,Google是一家不怎么使用微软技术的高科技公司,由于其产品线对微软的针对性(比如Gmail对Hotmail、Gtalk对MSN),在国外高举反微软垄断大旗和开源的大环境下,Google越来越被看成微软的最大对手

系统 2019-08-29 23:28:32 2466

Linux

从ip addr add和ifconfig的区别看linux网卡ip地

今天一个老外在邮件列表上问了一个问题,就是ipaddradd和ifconfig的区别,我给他进行了解答,可能因为英语不好吧,解答的很简单,因此我还是要在这里详细说明一下。其实它们之间没有什么区别,只是表述方式不同罢了。如果你非常理解网络协议的原理以及网络的分层架构那么我想你就不会有这个问题,实际上,每一个网卡设备都有一个mac地址,但是却可以有多个网络层地址,比如IP地址,然而这个事实无法很好地像用户提供操作接口,所以就引出了ip别名(IPaliases)

系统 2019-08-29 22:28:38 2466

操作系统

Shell脚本

http://learn.akae.cn/media/ch31.html目录1.Shell的历史2.Shell如何执行命令2.1.执行交互式命令2.2.执行脚本3.Shell的基本语法3.1.变量3.2.文件名代换(Globbing):*?[]3.3.命令代换:`或$()3.4.算术代换:$(())3.5.转义字符\3.6.单引号3.7.双引号4.bash启动脚本4.1.作为交互登录Shell启动,或者使用--login参数启动4.2.以交互非登录Shel

系统 2019-08-12 01:33:41 2466

Linux

Linux下防火墙设置

Linux下开启/关闭防火墙命令1)永久性生效,重启后不会复原开启:chkconfigiptableson关闭:chkconfigiptablesoff2)即时生效,重启后复原开启:serviceiptablesstart关闭:serviceiptablesstop需要说明的是对于Linux下的其它服务都可以用以上命令执行开启和关闭操作。Centos下防火墙配置及关闭执行”setup”命令启动文字模式配置实用程序,在”选择一种工具”中选择”防火墙配置”,然

系统 2019-08-12 01:33:33 2466

Linux

:Linux 内存管理 重要结构体

虚拟内存地址与实际内存地址之间的关系,是如此转换的,逻辑地址-->线性地址-->物理地址。也是从分段单元到分页单元的转换。在linux中,用户程序所使用的地址与硬件使用的物理地址是不等同的。虚拟内存引入一个间接层,它使得许多操作成为可能。在引入虚拟内存这个概念和方法后,在系统中运行的程序可以分配比物理内存更多的内存。而linux的地址有分下面几个类型:用户虚拟地址:用户空间所能看到的常规地址物理地址:在处理器和系统内存之间使用总线地址:在外围总线和内存之间

系统 2019-08-12 01:33:00 2466