dynamic_cast 操作符

我觉得c++提供的四个强制类型转换操作符中最有意思的就要数dynamic_cast,其他三个非常简单,不作赘述! dynamic_cast 将基类类型的指针或引用转换为同一继承层次中其他类型的引用或指针,与其他的强制类型转换不同的是,dynamic_cast涉及运行时类型检查,如果绑定到引用或指针的对象不是目标类型的对象,则dynamic_cast失败,如果转换指针类型的dynamic_cast失败,则dynami...

作者: dmastery 发布时间: 01-05

实例解读网卡驱动

Tg3 Gbit NIC Driver Analysis 在此仅仅讨论网络设备驱动的一般写法,有关硬件部分的相关代码由于硬件规格不同,予以省略。有什么地方错误,或补充,欢迎大家提出。 1, 驱动模块的加载和卸载 如果网络设备(包括wireless)是PCI规范的,则先是向内核注册该PCI设备(pci_register_driver),然后由pci_driver数据结构中的probe函数指针所指向的侦测函数来初始化该PCI设备,并且...

作者: 空灵静世 发布时间: 01-04

buffer I/O errors

Problem: Lots of buffer I/O errors appear in /var/log/messages and /var/log/dmesg, but the filesystems are still working fine. Solution: A server using a LUN, which is presented by a storage array through fabric channels, may show buffer I/O errors while the server is booting or commands such as fdisk and vgscan are being run. While these errors...

作者: xiawenzhao 发布时间: 01-04

Linux环境下USB的原理、驱动和配置

随着生活水平的提高,人们对USB设备的使用也越来越多,鉴于Linux在硬件配置上尚不能全部即插即用,因此关于Linux如何配置和使用,成为困扰我们的一大问题。 什么是USB? USB是英文Universal Serial Bus的缩写,意为通用串行总线。USB最初是为了替代许多不同的低速总线(包括并行、串行和键盘连接)而设计的,它以单一类型的总线连接各种不同的类型 的设备。USB的发展已经超...

作者: thyman126 发布时间: 01-05

crontab 详解

crontab 详解 文章分类:操作系统 cron 是一个可以用来根据时间、日期、月份、星期的组合来调度对重复任务的执行的守护进程。 cron 假定系统持续运行。如果当某任务被调度时系统不在运行,该任务就不会被执行。 要使用 cron 服务,你必须安装了 vixie-cron RPM 软件包,而且必须在运行 crond 服务。要判定该软件包是否已安装,使用 rpm -q vixie-cron 命令。要判定该服务是否...

作者: 极北之北 发布时间: 01-06

修改dbid

可以通过nid命令来修改数据库的dbid或者db_name 修改后需要关闭数据库,用open resetlogs打开,旧的备份都将失效 参考一下测试 最初的dbid如下: DBID NAME ---------- ----- 904273405 FOX c:>nid target=/ Connected to database FOX (DBID=904273405) Control Files in database: D:\ORACLE\ORADATA\FOX\CONTROL01.CTL D:\ORACLE\ORADATA\FOX\CONTROL02.CTL Change datab...

作者: lovegigi1999 发布时间: 01-04

Netfilter源码分析--6、NAT

六、NAT 6.1、简介 网络地址转换源(NAT)分为(Source NAT,SNAT)和目的NAT(Destination NAT, DNAT)2种不同的类型。SNAT是指修改数据包的源地址(改变连接的源IP)。SNAT会在数据包送出之前的最后一刻做好转工作。地址伪装 (Masquerading)是SNAT的一种特殊形式。DNAT 是指修改数据包的目标地址(改变连接的目的IP)。DNAT 总是在数据包进入以后立即转发,端口转发,负载平衡和透明...

作者: jazy333 发布时间: 01-05

Ubuntu网卡驱动

编译&安装 需求 1、目标机的linux内核版本,该实例的内核版本是:2.6.28-11-server 2、在开发机安装与目标机一致的linux内核版本,如果内核版本一致可不比编译内核,直接安装所需的内核头文件,如下命令: $>sudo apt-get install linux-headers-2.6.28-11-server 3、在开发机上安装编译环境 $>sudo apt-get install build-essential 4、最新的网卡驱动程序,该实例使用Real...

作者: reesun 发布时间: 01-06

chown详解

指令名称 : chown 使用权限 : root 使用方式 : chmod [-cfhvR] [--help] [--version] user[:group] file... 说明 : Linux/Unix 是多人多工作业系统,所有的档案皆有拥有者。利用 chown 可以将档案的拥有者加以改变。一般来说,这个指令只有是由系统管理者(root)所使用,一般使用者没有权限可以改变别人的档案拥有者,也没有权限可以自己的档案拥有者改设为别人。只有系统管...

作者: leolzbing521 发布时间: 01-04

位图排序

位图排序: 任意个(MAX_NUMBERS个) 0到固定值(MAX_VALUE)之间的数排序 时间复杂度O(n), 空间几乎是O(1),空间需求很低 假定int的长度是32位,即一个int可以编码32个数字(简单起见,一个bit代表一个数字,实际可以编码的范围就是unsigned int的最大值,但计算比较复杂), 那么0到n之间的数字就可以用最多n/32+1个整形表示,每个int的每个bit代表一个数。。 #include <stdio...

作者: donotblock 发布时间: 01-06