自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 linux中的信号处理(signal和alarm)

信号是unix中所使用的进程通信的一种最古老的方法.系统使用它来同志一个或多个进程异步事件的发生.linux系统库bits/signum.h对信号名作了定义:linux的大多数信号是提供给内核的,仅有少数几种信号可以在信号间发送..SIGHUP 当终止一个终端时,内核就把这种信号发送给该终端所控制的所有进程..SIGINT 当一个用户按下中断键(ctrl+c)后,内核就向该终端用关联的所有进程发送

2007-04-15 23:56:00 683

转载 使用 Linux 系统调用的内核命令

使用 Linux 系统调用的内核命令探究 SCI 并添加自己的调用 文档选项<tr valign="top"><td wid

2007-04-19 17:34:00 897

转载 可以感受到的好领导

对于程序员(我相信很多现代企业的员工也适合此标准)讲,好的领导的标准是什么?有人讲技 术能力要高,有人讲德行要高。要我说,这些都是废话、空话。好的领导,一定是可以感受到的!我接触过很多类型的领导,很多领导都给我留下很深刻的印象。好 领导之所以给你好的感受,往往就是因为他带给你你所需要的。而且有一点,你一定得记住,好领导是因为他有你这个好下属。 如果你感觉不到领导给你好感觉,最好在埋怨生不逢时的

2007-04-17 09:13:00 1170 1

转载 公司到底是怎么看我们的……

版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章原始出版、作者信息和本声明。否则将追究法律责任。本文地址:http://blog.csdn.net/jobchanceleo/archive/2007/04/13/1563866.aspx不可否认,作为打工者,我们都从某种程度上被老板认为是种工具,类似扳手之类的、可以被随时换掉又俯拾皆是的工具。初入职场的我们听到这种理论可能很不以为

2007-04-16 09:22:00 550

转载 90%程序员写不出无BUG的二分查找程序?

《编 程珠玑》(第二版)一书第四章中提及过100多名专业程序员使用两个小时的充足时间编写一个简单的二分查找程序,结果发现90%的人编出的代码都有 BUG,Knuth也在他的《Sorting and Searching》一书中提过,第一个二分查找程序在1946年已经公布,但是到了1962年才出现第一个没有BUG的二分查找程序,期间经历了16年 的时间。那么为什么一个简单的二分查找程序会这么容易出错呢

2007-04-13 10:48:00 703

转载 使用 OpenSSL API 进行安全编程,第 3 部分: 提供安全--服务

如果没有安全的服务器应用程序,那么也就不需要安全的客户机应用程序。使用 OpenSSL,我们可以创建安全的服务器应用程序,尽管文档让这一切看起来非常复杂,但实际上并非如此。本文中我们将学习如何使用在这个 3 部分系列文章 的 第 1 部分 中学习到的概念来构建安全的服务器应用程序。 本系列文章的前两部分讨论了使用 OpenSSL 来创建客户机端应用程序的内容。第 1 部分 讨论了使用 Ope

2007-04-12 15:21:00 1737 1

转载 使用 OpenSSL API 进行安全编程,第 2 部分: 安全握手--防止中间人(MITM)攻击

安全套接字层(Secure Sockets Layer,SSL)会话中的安全握手非常重要,这是因为该连接中的所有安全性都是在握手过程中建立的。本文将介绍如何增强 SSL 握手的安全性,从而防止中间人(MITM)攻击 —— 此时入侵的一方会伪装成另外一个可信源。本文还会介绍数字证书的概念,以及 OpenSSL API 如何处理数字证书。 不久之前,安全握手是双方的业务得以实现的一个标记。毕竟

2007-04-12 15:20:00 1556

转载 使用 OpenSSL API 进行安全编程--创建基本的安全连接和非安全连接

学习如何使用 OpenSSL —— 用于安全通信的最著名的开放库 —— 的 API 有些强人所难,因为其文档并不完全。您可以通过本文中的提示补充这方面的知识,并驾驭该 API。在建立基本的连接之后,就可以查看如何使用 OpenSSL 的 BIO 库来建立安全连接和非安全连接。与此同时,您还会学到一些关于错误检测的知识。 OpenSSL API 的文档有些含糊不清。因为还没有多少关于 Ope

2007-04-12 15:17:00 908

转载 安全编程: 验证输入--接收用户数据的最佳实践

本文介绍了如何验证输入――任何安全程序的首要环节之一。 2003 年 7 月,计算机应急反应小组协调中心报告了 Microsoft Windows 的 DirectX MIDI 库中一组危险的漏洞。DirectXMIDI 库是用于播放 MIDI 格式音乐的底层 Windows 库。不幸的是,这个库没有能力去检查 MIDI 文件中的所有数据值;text、copyright 或者 MThd tr

2007-04-12 15:15:00 843

转载 安全编程: 最小化特权--根除缺陷

安全的程序必须最小化特权,以降低 bug 转化为安全缺陷的可能性。本文讨论了如何通过最小化有特权的模块、授与的特权以及特权的有效时间来最小化特权。文章不仅讨论了一些传统的类 UNIX 特权机制,还讨论了较新的机制,如 FreeBSD 的 jail(),Linux 安全模块(Linux Security Modules,LSM)框架,以及 Security-Enhanced Linux(SELinu

2007-04-12 15:12:00 1233

原创 安全编程: 安全地调用组件--如何处理调用和返回值与调用哪些组件一样重要

应用程序通常都会调用其他组件,例如底层的操作系统、数据库系统、可重用的库、Internet 服务(例如 DNS)、Web 服务,等等。本文通过讨论只使用安全组件、只传递有效数据,确保数据可以正确进行处理,检查返回值和异常情况,并且当数据在应用程序和组件之间传递时对数 据进行保护,从而解释如何防止攻击者利用对其他组件的调用。 查看 PDF 文件时单击一个超文本链接不应该是什么安全问题,条件是

2007-04-12 15:11:00 971

转载 安全编程: 避免竞争条件--资源争用可能对您不利

了解什么是竞争条件,以及它们为什么会引发安全问题。本文向您展示了如何在类 UNIX® (Unix-like)系统中处理常见的竞争条件,包括如何正确地创建锁文件、锁文件的替代者,如何处理文件系统,以及如何处理共享目录(特别是如何在 /tmp 目录下正确创建临时目录)。需要您对信号处理稍有了解。 通过一个偷窃而来的口令,Mallory 成功地登录到一台运行 Linux 的重要服务器。 其帐号是

2007-04-12 15:09:00 1249

转载 安全编程: 开发安全的程序--正确的理念是成功的一半

本专栏说明了如何编写安全的应用程序;重点讨论的是 Linux 操作系统,但是其中的许多原则也适用于任何系统。在当今联网的世界中,软件开发人员必须知道如何编写安全的程序,然而人们还未广泛认识到这一信息,也未向 人们广泛讲授过这一信息。本文是安全编程(Secure programmer)专栏的第一篇文章,它介绍了如何编写安全的应用程序的基本思想,并讨论了如何针对特定的应用程序确定安全性需求。以后的几篇

2007-04-12 15:04:00 1451

转载 安全编程: 警惕输入--找出并保护程序的入口

本文论述了数据进入您的程序的各种途径,重点是如何适当地对它们进行处理;您甚至可能还没有了解它们全部!本文首先论述了如何设 计程序来限制数据可以进入您的程序的途径,以及您的设计会如何影响哪些可以成为输入。然后论述了各种不同的输入通道以及如何使用这些通道,包括环境变量、 文件、文件描述符、命令行、图形用户界面(GUI)、网络数据以及其他的输入。 早在 2001 年,许多大公司安装了应用程序“SA

2007-04-12 15:02:00 586

转载 安全编程: 防止缓冲区溢出--防止如今最常见的程序缺陷

本文讨论 Linux/UNIX 系统中最常见的缺陷:缓冲区溢出。本文首先解释什么是缓冲区溢出,以及它们为何如此常见和如此危险。然后讨论广泛用于解决缓冲区溢出的新 Linux 和 UNIX 方法 ―― 以及为什么这些方法还不足够。随后将展示 C/C++ 程序中防止缓冲区溢出的各种方法,同时包括静态调整大小的方法(比如标准的 C 库和 OpenBSD/strlcpy 解决方案)和动态调整大小的解决方案

2007-04-12 15:01:00 1003

原创 SYN Cookie原理及其在Linux2.4内核中的实现

本文就分别介绍一下 SYN Flood 攻击和 SYN Cookie 的原理,更重要的是介绍 Linux 内核中实现SYN Cookie 的方式。最后,本文给出一种增强目前 Linux 中 SYN Cookie 功能的想法。 概述在 目前以IPv4为支撑的网络协议上搭建的网络环境中,SYN Flood是一种非常危险而常见的DoS攻击方式。到目前为止,能够有效防范SYN Flo

2007-04-12 14:39:00 592

转载 Linux 套接字编程中的 5 个隐患

Socket API 是网络应用程序开发中实际应用的标准 API。尽管该 API 简单,但是开发新手可能会经历一些常见的问题。本文识别一些最常见的隐患并向您显示如何避免它们。 在 4.2 BSD UNIX® 操作系统中首次引入,Sockets API 现在是任何操作系统的标准特性。事实上,很难找到一种不支持 Sockets API 的现代语言。该 API 相当简单,但新的开发人员仍然会遇

2007-04-12 12:03:00 497

转载 提高 Linux 上 socket 性能

使用 Sockets API,我们可以开发客户机和服务器应用程序,它们可以在本地网络上进行通信,也可以通过 Internet 在全球范围内进行通信。与其他 API 一样,您可以通过一些方法使用 Sockets API,从而提高 Socket 的性能,或者限制 Socket 的性能。本文探索了 4 种使用 Sockets API 来获取应用程序的最大性能并对 GNU/Linux® 环境进行优化从而达

2007-04-12 12:01:00 574

转载 Linux 2.4 Netfilter实现机制和扩展技术

本文从Linux网络协议栈中报文的流动过程分析开始,对Linux 2.4.x内核中最流行的防火墙构建平台Netfilter进行了深入分析,着重介绍了如何在Netfilter-iptables机制中进行应用扩展, 并在文末给出了一个利用扩展Netfilter-iptables实现VPN的方案。 2.4.x的内核相对于 2.2.x在IP协议栈部分有比较大的改动, Netfilter-iptabl

2007-04-12 11:57:00 720

原创 Linux 系统内核空间与用户空间通信的实现与分析

多数的 Linux 内核态程序都需要和用户空间的进程交换数据,但 Linux 内核态无法对传统的 Linux 进程间同步和通信的方法提供足够的支持。本文总结并比较了几种内核态与用户态进程通信的实现方法,并推荐使用 netlink 套接字实现中断环境与用户态进程通信。1 引言Linux 是一个源码开放的操作系统,无论是普通用户还是企业用户都可以编写自己的内核代码,再加上对标准内核的裁

2007-04-12 11:52:00 602

原创 在 Linux 下用户空间与内核空间数据交换的方式,第 2 部分: procfs、seq_file、debugfs和relayfs

本系列文章包括两篇,它们文详细地地介绍了Linux系统下用户空间与内核空间数据交换的九种方式,包括内核启动参数、模块参数 与sysfs、sysctl、系统调用、netlink、procfs、seq_file、debugfs和relayfs,并给出具体的例子帮助读者掌 握这些技术的使用。 本文是该系列文章的第二篇,它介绍了procfs、seq_file、debugfs和relayfs,并结合给出

2007-04-12 09:46:00 705

转载 在 Linux 下用户空间与内核空间数据交换的方式,第 1 部分: 内核启动参数、模块参数与sysfs、sysctl、系统调用和netlink

本系列文章包括两篇,它们文详细地介绍了 Linux 系统下用户空间与内核空间数据交换的九种方式,包括内核启动参数、模块参数与 sysfs、sysctl、系统调用、netlink、procfs、seq_file、debugfs和relayfs,并给出具体的例子帮助读者掌握 这些技术的使用。 本文是该系列文章的第一篇,它介绍了内核启动参数、模块参数与sysfs、sysctl、系统调用和netlin

2007-04-12 09:45:00 743

转载 重新安装Windows后Grub如何恢复

前日,Windows染毒,删除病毒文件时误删了一个系统文件C_936.nls。使用故障恢复台把光盘文件复制后,Windows恢复正常,但是发现Grub菜单不见了。猜测是Windows恢复时MBR被覆盖了。1. 插入Linux急救盘,进入linux rescue模式。2. 执行mount命令,将正确的文件系统连接起来。3. 执行命令chroot /mnt/sysimage

2007-04-11 21:36:00 1153

原创 details or to re-create the image yourself, see the installation scripts

 # Settings !!!*** PLEASE MODIFY THESE ***!!!export MIRROR="ftp://ftp.mirror.ac.uk/mirror/fedora.redhat.com/6/i386/os/Fedora/RPMS/"export TMPDIR=`pwd`"/tmp2"export ROOT_FS=`pwd`"/FedoraCore6-x86-roo

2007-04-10 17:08:00 567

转载 把Linux放进软盘里

感谢 zhl1979 指出我的N多错误 (汗......) 已经修正。 把Linux放进软盘里 笔者的同事最近在测试AMD 64bit CPU时,遇到这样一个问题:当插入含有AMD官方软件Maxpower64的软盘后,系统提示不能引 导。关于这个软件AMD公司提供的信息很少,只知道它必须在linux环境下执行。所以笔者打开软盘,发现里面只有两个文件:syslinux.cfg,

2007-04-10 15:20:00 695

原创 制作根文件系统和ramdisk映象文件

1,基本目录结构#cd /babylinux/rootfs#mkdir etc usr var tmp proc home root dev其中etc,proc和dev是一定要建的,bin和sbin不用建,因为busybox中已经有了.其他的可以象征性的建几个就可以了.拷贝busybox#cp -R /babylinux/busybox-1.00/_install/

2007-04-10 15:18:00 2425

原创 一个脚本,可以根据参数文件名,以正确的参数调用tar来解压缩tar.gz或tar.bz2文件

写一个脚本,可以根据参数文件名,以正确的参数调用tar来解压缩tar.gz或tar.bz2文件。#!/bin/shcase ${1##*.tar.} in      bz2)         tar jxvf $1         ;;     gz)         tar zxvf $1         ;;     *

2007-04-10 15:12:00 1501

Linux Kernel GCOV - tool analysis

详细描述如何使用gcov工具来进行内核的代码覆盖率测试。包括linux-2.4内核和linux-2.6内核。极度推荐!

2009-10-29

空空如也

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

TA关注的人

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