手机版
你好,游客 登录 注册 搜索
rss订阅 手机访问 
Linux编程
想要精通PHP吗?先学好Linux/Unix和C吧
现在的IT市场很浮躁,充斥着各种各样的所谓“精通”,在求职简历上比比皆是。但是本文目的不在于讨论精通的标准,也不想去批评现在漫天的精通。就让我们暂且认同“精通”这两个字,来讨论下Linux/Unix(以下简称Linux)和C对精通PHP的帮助。另外要说明下的是,这里说的精通PHP只是纯粹对于PHP来说的,并不是指web开发,所以javascript,HTML或者Ajax,smarty,CSS这类都不在讨论范围。
日期:03/19/2009 01:31:26 作者:冷傲的魂魂
Linux下安装、配置ACE

最近打算开始学习Linux下的C++程序开发,经过几天的搜索,发现ACE这套框架不错,最主要的是能够跨平台。不过在安装的过程中还是走了不少的弯路,在此记录下来。一、下载安装包

下载地址:http://download.dre.vanderbilt.edu/

由于我只需要使用ACE,因此我只下载了ACE.tar.gz

日期:03/18/2009 12:29:27 作者:Linux编辑
下载:Linux Kernel 2.6.28.8发布
 Linux Kernel是Linux系统的核心部件,支持Intel、Alpha、PPC、 Sparc、IA-64 、ARM、MIPS、 Amiga、Atari和IBM s/390等,还支持32位大文件系统.而在Intel平台上,物理内存最大支持可以达到64GB.加强对IDE和 SCSI硬件系统的支持,并增强了对 USB设备和3D加速卡的支持.
日期:03/17/2009 15:58:55 作者:cnbeta
CentOS 5.2下配置Java环境
第一步:查看Linux自带的JDK是否已安装 (卸载centOS已安装的1.4)
<1># rpm -qa|grep jdk                ← 查看jdk的信息或直接执行

# rpm -q jdk

# java -version
<2># rpm -qa | grep gcj                ← 确认gcj的版本号
<3># yum -y remove java-1.4.2-gcj-compat        ← 卸载gcj
日期:03/16/2009 17:44:30 作者:CSDN
Linux环境下Eclipse的C++配置

打算用Linux下面的eclipse进行c++开发,因为好久没做c++开发了,又对Linux没那么熟悉,就记录一下我的入门经历。

目的是创建一个共享库,然后用另一个项目去调用。

首先,创建一个共享库。打开eclipse,选择c++项目里面的共享库,创建即可,然后就是编写相应的代码什么的……

日期:03/15/2009 14:50:37 作者:schumyxp
Linux Gcc-4.1.0的安装

为了在Linux用上新出来的qt4,我必须给系统装上gcc-3.2.2以上的版本。网上资料让我越看越头疼,幸好折腾了这么久,终于安装好了gcc-4.1.0,其实qt4里,除了qt-4.4.0以上的版本的安装与这有区别外,其他的都一样吧。

步骤如下:

1.首先下载 gcc-4.1.0.tar.gz 或gcc-4.1.0.tar.bz2

日期:03/14/2009 06:41:55 作者:gucchon
利用crosstool工具构建嵌入式Linux交叉编译工具链

交叉编译工具链是一个由编译器、连接器和解释器组成的综合开发环境,交叉编译工具链主要由binutils、gcc和glibc 3个部分组成。

Linux使用的工具链软件是:Binutils,gcc,glibc,gdb。

其中binutils是二进制程序处理工具。gcc是编译器。glibc是应用程序编程的函数库文件软件包。gdb是调试工具。

日期:03/13/2009 05:58:53 作者:黄晓杰
下载:PHP 5.2.9-1 修正版发布
PHP是一种新型的CGI程序编写语言,易学易用,运行速度快,可以方便快捷地编写出功能强大,运行速度快,并可同时运行于 Windows、Unix、Linux平台的Web后台程序,内置了对文件上传、密码认证、Cookies操作、邮件收发、动态GIF生成等功能,PHP 直接为很多数据库提供原本的连接,包括Oracle、Sybase、Postgres、Mysql、Informix、Dbase、Solid、 Access等,完全支持ODBC接口,用户更换平台时,无需变换PHP代码,可即拿即用.
日期:03/12/2009 00:29:51 作者:cnbeta
Linux下编译postfix使其支持mysql,ldap,sasl,ssl的脚本
Linux下编译postfix使其支持mysql,ldap,sasl,ssl的脚本

echo "+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"

echo "Please Input the options in the following!"

echo "   Modified By GTSC Hu Changwen"

echo "   Any problem,Please Connact me:wtcmaster@126.com"

echo "+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"

echo ""

for data in ldap mysql sasl ssl

日期:03/11/2009 18:56:45 作者:胡昌文
Linux 常用C函数说明——接口处理知识

Linux 常用C函数说明——接口处理基本知识

setprotoent(打开网络协议的数据文件)

相关函数  getprotobyname, getprotobynumber, endprotoent

表头文件  #include <netdb.h>

定义函数  void setprotoent (int stayopen);

函数说明  setprotoent()用来打开/etc/protocols,如果参数stayopen值为1,则接下来的getprotobyname()或getprotobynumber()将不会自动关闭此文件。

日期:03/10/2009 12:15:24 作者:Linux编辑
利用bochs调试Linux 0.11内核

引导程序调试软件bochs,跟配套的linux0.11内核img下载地址分别是:

http://sourceforge.net/projects/bochs/
http://www.oldlinux.org/Linux.old/bochs/linux-0.11-devel-040329.zip

调试环境的的建立

下载linux-0.11-devel-040329.zip,解压缩

日期:03/09/2009 02:52:22 作者:Linux编辑
Linux下编写自己的ls命令
Linux系统中ls -l命令可以获得某个目录下文件的具体信息,比如:
gaolu@gaolu-desktop:~/test_folder$
gaolu@gaolu-desktop:~/test_folder$ ls -l
total 20
-rw-r--r-- 1 gaolu gaolu 2578 2009-03-08 02:10 gao.lu.c
-rw-r--r-- 1 gaolu gaolu 2577 2009-03-08 02:07 gao.lu.c~
-rwxr-xr-x 1 gaolu gaolu 9675 2009-03-08 02:12 ls.o
-rwxr--r-- 1 gaolu gaolu    0 2009-03-08 01:50 test1
-rw-r--r-- 1 gaolu gaolu    0 2009-03-08 01:50 test2
-rw-r--r-- 1 gaolu gaolu    0 2009-03-08 01:50 test3
-rw-r--r-- 1 gaolu gaolu    0 2009-03-08 01:51 test4
日期:03/08/2009 08:05:13 作者:gaolu
给Linux设置HTTP、FTP代理

给Linux设置HTTP、FTP代理的Java代码

/**

* 用root登录编辑 /etc/bash.bashrc文件, 添加下列两行都文件最后:

*/

// 有密码形式

日期:03/07/2009 09:27:38 作者:tcaosmail-gmail
多核程序优化工具——Cilk++ 1.0发布
据国外媒体报道:Cilk Arts,一家制作多核编程软件的公司,发布了Cilk++ 1.0,这是一个对Linux和Windows下运行在多核处理器上的程序性能进行优化的平台。通过Cilk++,用户可以对支持多核的应用程序进行快速的开发、测试和发布。该套解决方案包括一套C++语言的扩展、一个运行时系统以及一些简化多核软件开发的工具。
日期:03/06/2009 21:03:39 作者:译/csjedi
在Ubuntu 8.10上安装Rails
有了aptitude和gem,在Ubuntu上安装Rails不是什么难事儿,但实际安装时没准碰到什么问题,比如漏掉了某些类库、必须更新版本等等。如果出现错误了去网上现查也可以,但是耗时耗力,搞不好1、2个小时搭进去了。我在昨天和今天装了3台机器,整理了一下在Ubuntu 8.10上安装Rails 2.2.2的步骤,第一台安装花了2个小时,最后1台只花了10分钟。步骤如下:
日期:03/06/2009 15:03:45 作者:aqingsao
Tomcat在Linux下的启动与停止Shell

#!/bin/sh

sto(){

echo "stop.........."

/bin/kill -9 `exec ps ax|grep java|grep -v grep|awk '{print $1}'`

}

日期:03/05/2009 17:56:49 作者:Tomcat
用icc编译Linux内核完美教程[图文]
本文将介绍用icc(Intel® C++ Compiler)版本 10.1.x 来编译Linux的内核(支持2.6.22以上的版本)
2.6.23以上包含2.6.23的内核它的解压和引导内核代码改变了如果用icc去直接编译内核,将会造成部分代码无法用icc编译,或者编译出来的代码无法正常引导内核,所有本文的方法是用gcc编译引导部分的代码,而其它部分的代码交由icc编译.
日期:03/04/2009 01:21:03 作者:Power_By_RTL
Ubuntu手动安装JDK

安装前可以查看一下jdk版本,进入Ubuntu终端 $java -version 回车,可以看到jdk版本是1. 4 .2的。

1. 手动安装jdk6

首先,在http://java.sun.com下载jdk-6u12-linux-i586.bin,据说这个操作起来比较简单,不需要转换。

然后,可以把它放置在任何你喜欢的文件夹,如果是像我样的菜鸟,建议把它放置到主文件夹(/home/*)下。

日期:03/03/2009 10:00:17 作者:liangshihong
Linux下QT图形界面开发

Qt是一个跨平台的C++图形用户界面库,.由挪威TrollTech公司出品,目前包括Qt/X11,基于Frambuffer的Qt Embedded,快 速开发工具Qt Designer几国际化工具Qt Linguist等.Qt支持Unix及Linux系统,还支持 Windows NT/Windows 2k及Qindows 95/98平台.Qt的良好封装机制使其模块化程度非常高,可重用性较好.

Qt/Embeded是面向嵌入式系统的Qt版本,是Qt的嵌入式Linux窗口,是完整的自包含C++ GUI和基于Linux的嵌入式品台开发工具。Qt/Embeded API可用于多种开发项目。许多基于Qt的X Window程序可以非常方便地移植到嵌入式版本。

日期:03/02/2009 17:20:22 作者:QT编辑
构建嵌入式Linux的NFS

准备工作:

一台装有Red Hat9.0的PC机,一套LJD2410-I开发板,PC机上装有LJD2410的软件包,假如我们通过NFS要加载的文件系统为/LJD2410/root_dir/root_china,

Ifconfig eth0 192.168.1.100  //设置PC机Linux的IP:192.168.1.100,

Ifconfig eth0 192.168.1.10  //开发板IP:192.168.1.10

日期:03/01/2009 02:22:25 作者:Linux编辑
Linux Shell编程指南

为什么要进行shell编程

  Linux系统中虽然有各种各样的图形界面工具,但shell仍然是一个非常灵活的工具。Shell不仅集合了大量命令,还是一门非常棒的编程语言。借助shell,大量任务能实现自动化;shell特别擅长系统管理任务,尤其适合那些易用性、可维护性和便携性比效率更重要的任务。

  下面,让我们一起来看看shell是如何工作的:

日期:02/28/2009 02:54:23 作者:Linux编辑
LinuxDNA高性能Linux Kernel编译成功
  一个使用Intel C/C++编译器编译的LinuxDNA兼容Linux内核已经完成。新编译内核的价值不仅在于它没有出错,而在于它在大多数情况下已经可以作为一个兼容Linux内核开机进入Gentoo Linux系统。
日期:02/28/2009 00:32:17 作者:h0ng
在Linux下使用用Valgrind查找内存泄漏和无效内存访问
Valgrind是x86架构Linux上的多重用途代码剖析和内存调试工具。你可以在它的环境中运行你的程序来监视内存的使用情况,比如C语言中的malloc和free或者C++中的new和delete。如果你使用了未初始化内存,在数组末端外设置内存或是忘记释放指针,Valgrind都可以检测出来。尽管Valgrind还可以做其它的工作,本教程仍然集中在如何使用它来发现内存相关错误,因为这也程序员经常出现的错误。
日期:02/28/2009 00:15:08 作者:Linux编辑
程序员如何选择合适的程序语言?
由于个人专业缘故,我一直在寻找最好的工具。大家都知道,由于在软件多种多样的原因,我们在开发过程中,需要选择各式各样的程序语言进行工作。也正因如 此,我经常被软件开发的初学者问及:“究竟应该学习哪种语言?”。但是当我反问他们想要做些什么的时候,他们却变得一脸茫然。原来这些人一直认为,一种最 佳语言可以解决所有的问题。每个人都知道,这个世界上并不存在万能的“银弹”,但是,我却可以为您推荐几款在专业领域中更适合的,适用性更广的程序语言。 鉴于此,我列出了如下的一个清单:
日期:02/27/2009 10:12:18 作者:cnbeta
ARM Linux成功编译Linux 2.4.21内核

内核下载:http://www.kernel.org/pub/linux/kernel/linux-2.4.21

(刚刚下载的Linux 2.4.6内核,打完补丁发现不支持at91rm9200,郁闷)

arm9补丁下载:ftp://ftp.arm.linux.org.uk/pub/linux/arm/kernel/v2.4/

交叉编译器:arm-linux-cross-2.95.3

日期:02/26/2009 10:18:31 作者: haodi
为Linux建立最小的根文件系统

在编译内核时候,可以指定一个文件夹作为内核启动时候的根文件系统,Linux中管这个文件系统叫做initramfs。

具体做法如下(以i386为例)

1.下载内核文件
wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.26.tar.bz2

2.解压内核
bzip2 -d linux-2.6.26.tar.bz2 生成一个linux-2.6.26.tar文件,然后
tar xvf linux-2.6.26.tar
解压后,将有个linux-2.6.26文件夹存在

日期:02/25/2009 13:29:37 作者:cornsea
09年2月编程语言排行榜[图文]
2009年2月Tiobe编程语言排行榜发布,前十位的排名没有太大变化,C语言在取得了08年年度编程语言后增势迅猛,相比去年同期增长了0.98%。本期前20名的榜单中,两种同样以商业数据处理擅长的编程语言COBOL和RPG的排名变化值得我们关注。COBOL本期跌出前20名,本期排在22位 (上期排名17);RPG语言进入前20名,排在第19位(上期排名21)。
日期:02/23/2009 11:00:35 作者:cnbeta
浅谈Linux应该学习

一.为什么要学Linux?

当然最重要是爱好和兴趣!如果你这种必要学,或者根本不喜欢,请不要浪费时间,你学也学不好!

二.起步

你应该为自己创造一个学习Linux的环境--在电脑上装一个Linux或unix
问题1:版本的选择

日期:02/22/2009 11:00:51 作者:Linux编辑
Linux下安装JDK1.5.0_06

1、显示Linux系统已有的Java版本:
#java -version
java version "1.4.2"
gcj (GCC) 3.4.5 20051201 (Red Hat 3.4.5-2)
Copyright (C) 2004 Free Software Foundation, Inc.

2、我下载的新版本是:jdk-1_5_0_06-linux-i586.bin

3、#sh jdk-1_5_0_06-linux-i586.bin 按提示选择yes (安装完成)

日期:02/21/2009 01:10:22 作者: 轻舞飞扬
C++字符编码转化代码
 C++字符编码转化代码,大家可以自己编译下看看。  bool GB2312_AnsiToUnicode(char *lpszOut, const char* lpszIn,
                          const char* lpszCurCode/* = NULL*/,
                          const char* lpszOutCode/* = NULL*/)
{
#ifdef WIN32       //  _WIN32
       //Do nothing
 int lpszOut_size=GB2312_AnsiToUnicode_Size(lpszIn);
日期:02/20/2009 10:48:46 作者:Linux编辑
iconv_linux下字符集编码转换轻松实现

在Linux上进行编码转换时,既可以利用iconv函数族编程实现,也可以利用iconv命令来实现,只不过后者是针对文件的,即将指定文件从一种编码转换为另一种编码。

一、利用iconv函数族进行编码转换
iconv函数族的头文件是iconv.h,使用前需包含之。

日期:02/20/2009 10:46:44 作者:foxwolf_ym
Linux Kernel网络参数调优

Linux环境下在/etc/sysctl.conf 中加入下面的配置,

# 开启TCP滑动窗口以便程序可以使用TCP数据包扩展位来增大滑动窗口的大小,提高网络性能 Fedora和很多发行版已经默认开启
net.ipv4.tcp_window_scaling = 1

日期:02/19/2009 18:56:47 作者:a3linux
Linux 兼容内核 (longene) 0.2.3 版 (UnifiedKernel-0.2.3) 发布

2009 年 2 月 12 日,Linux 兼容内核项目开发组正式发布了 Linux 兼容内核 0.2.3 版本。该版本在 0.2.2-1 版的基础上,将 Wine 的注册表管理机制整体移植到内核,使得应用程序运行效率有了一定的提高。

兼容内核项目计划及项目进展:

日期:02/18/2009 01:08:09 作者:/linooxlee<linoox.lee AT gmail.com>
S3被指缺乏Linux驱动开发能力
  上周S3公布了Chrome 540 GTX显卡,S3声称这是接口强大的高清显卡,同时支持HDMI和DisplayPort以及DVI。新闻稿中宣传Chrome 540 GTX支持Linux和OpenGL 3.0。不过Linux用户最近指出,S3的Linux驱动根本是遥遥无期。
日期:02/17/2009 09:55:21 作者:Linux编辑
Linux下Java环境变量的设置

网上关于Linux下JAVA的环境变量的设置方法很多,本人觉得最有效的方法不错:

/home/系统用户名/下
修改.bashrc文件。
[root@Linuxidc rpm]#vi .bashrc
set JAVA_HOME=/usr/java/j2sdk1.4.2_06
export JAVA_HOME
set PATH=$PATH:$JAVA_HOME/bin

日期:02/16/2009 10:11:16 作者:Linux
Linux的内存及io映射

Linux会将物理地址映射为虚拟地址,所以要在内核中操作寄存器或者外部设备,就必须找到其相应的虚拟地址。

一般来说,io映射相关定义会放在include/arch-xxx/io.h中。而内存相关定义会在memory.h中

日期:02/15/2009 08:37:56 作者: timer
Linux配置C,C++编译环境系列一之环境配置

环境准备

刚装好的系统中已经有GCC了,但是这个GCC什么文件都不能编译,因为没有一些必须的头文件,所以要安装build-essential这个软件包,安装了这个包会自动安装上g++,libc6-dev,linux-libc-dev,libstdc++6-4.1-dev等一些必须的软件和头文件的库。

日期:02/14/2009 09:59:11 作者:netalpha
Linux配置C,C++编译环境系列二之纯文本编译C++
Hi,learning c++ in g++该命令将文件‘hello.cpp’中的代码编译为机器码并存储在可执行文件’hello’中。机器码的文件名是通过 -o 选项指定的。该选项通常作为命令行中的最后一个参数。如果被省略,输出文件默认为 ‘a.out’。注意到如果当前目录中与可执行文件重名的文件已经存在,它将被复盖。选项 -Wall 开启编译器几乎所有常用的警告──强烈建议你始终使用该选项。编译器有很多其他的警告选项,但 -Wall 是最常用的。默认情况下GCC 不会产生任何警告信息。当编写 C 或 C++ 程序时编译器警告非常有助于检测程序存在的问题。本例中,编译器使用了 -Wall 选项而没产生任何警告,因为示例程序是完全合法的。这将可执行文件载入内存,并使 CPU 开始执行其包含的指令。 路径 ./ 指代当前目录,因此 ./hello 载入并执行当前目录下的可执行文件 ‘hello’。
日期:02/14/2009 09:55:59 作者:netalpha
Linux核心部件Linux Kernel 2.6.28.5释出
Linux Kernel是Linux系统的核心部件,支持Intel、Alpha、PPC、 Sparc、IA-64 、ARM、MIPS、 Amiga、Atari和IBM s/390等,还支持32位大文件系统。而在Intel平台上,物理内存最大支持可以达到64GB.加强对IDE和 SCSI硬件系统的支持,并增强了对 USB设备和3D加速卡的支持。
日期:02/13/2009 01:57:05 作者:Linux
高级C+Linux编程基础

高级C+Linux编程基础

指针&指针数组

强制类型转换 int *p;*(char *)p;

int *p1,*p2; int a[3]={1,2,3};

p=a;

a[0]-->1  *p-->1  p[0]

a[1]-->*(p+1)-->p[1]

*(a+1) a可理解为存储了本身地址的指针 *(a+1) ---> *(5640+4) 5640假定为一地址.

日期:02/12/2009 11:15:11 作者:Linux编辑
经验分享:对Java中的线程感想

   1.进程和线程的区别

    通俗一点说,进程就是程序的一次执行,而线程可以理解为进程中的执行的一段程序片段。

    用一点文词说就是,每个进程都有独立的代码和数据空间(进程上下文);而线程可以看成是轻量级的进程。一般来讲(不使用特殊技术),同一进程所产生的线程共享同一块内存空间。

日期:02/12/2009 10:12:58 作者:Java编辑
在Linux下使用CMake构建应用程序
    本文介绍了一个跨平台的自动化构建系统 CMake 在 Linux 上的使用方法。 CMake 是一个比 automake 更加容易使用的工具,能够使程序员从复杂的编译连接过程中解脱出来。文中通过一些例子介绍使用 CMake 处理多源文件目录的方法、查找并使用其他开发包的方法以及生成 debug 版和 release 版程序的方法。
日期:02/11/2009 15:09:05 作者:王 程明
构建arm-linux仿真运行环境 (NFS启动)
一 前言
本文旨在将 arm-linux 在 skyeye 上搭建起来,并在 arm-linux 上能成功 mount NFS 为目标, 最终我们能在 arm-linux 里运行我们自己的应用程序. 其实在 skyeye 上移植 arm-linux 并非难事,网上也有不少资料, 只是大都遗漏细节, 以致细微之处卡壳,所以本文力求详实清析, 希望能对大家有点用处。
日期:02/10/2009 06:20:16 作者:Linux编辑
Linux系统C++开发工具
就C++开发工具而言,与Windows下微软(VC, VS2005等)一统天下相比,Linux/Unix下C++开发,可谓五花八门,各式各样。Emacs, vi, eclipse, anjuta,kdevelop等层出不穷。
日期:02/09/2009 13:03:44 作者:Linux编辑
Linux Kernel2.6升级加强USB设备支持

Linux的核心部件Linux Kernel发布新升级,该软件支持Intel,Alpha,PPC,Sparc,IA-64,ARM,MIPS,Amiga,Atari和IBM s/390等,还支持32位大文件系统。而在Intel平台上,物理内存最大支持可以达到64GB。新版本加强对IDE和SCSI硬件系统的支持,并增强了对USB设备和3D加速卡的支持。

日期:02/08/2009 05:22:16 作者:陈涛
Linux Kernel 2.6.28.4释出
Linux Kernel是Linux系统的核心部件,支持Intel、Alpha、PPC、 Sparc、IA-64 、ARM、MIPS、 Amiga、Atari和IBM s/390等,还支持32位大文件系统.而在Intel平台上,物理内存最大支持可以达到64GB.加强对IDE和 SCSI硬件系统的支持,并增强了对 USB设备和3D加速卡的支持.
日期:02/07/2009 08:00:08 作者:cnbeta
C++函数学习之文件遍历小函数的设计实例
之前写过 关于 win32 下磁盘的遍历方法,下面是将里面实现的磁盘遍历函数重新设计了一下,因为磁盘遍历,文件夹遍历在很多时候还是很常见的,为了不修改遍历的函数体,我将处理文件的部分交由一个回调函数去处理,这样的话,你甚至可以把下面的代码写在dll里面,需要进行文件遍历的地方,只要实现一个回调函数传进去就可以了。
日期:02/06/2009 10:26:59 作者:C++
Java EE 6 Platform草案包含了Web Profile

   Java EE 6 Platform规范的公共草案已经发布了,其将对公众评估和反馈保持开放,直到2009年2月23日为止。 或许这一 迟到的草案最引人注目的地方就是Web Profile,这是Java EE平台历史上第一个profile.

    规范的领导者Roberto Chinnici对这一Web Profile做了概述:

日期:02/05/2009 11:23:14 作者:译者 宋玮
Sun-Java 6 Linux 中文字体配置

Sun-Java 6 Linux 中文字体配置,jre的安装过程随意Google一下就行,但是安装完之后没有中文字体支持,因此在使用诸如FreeMind之类的基于java的软件时无法正确显示中文,有些字只显出一个方框。

我选用了微软雅黑作为FreeMind的中文字体,方法嘛很简单:

日期:02/04/2009 07:26:11 作者: WyBaby
C语言Linux时间操作

C语言Linux时间操作

#include <sys/time.h>
#include <stdio.h>
#include <math.h>
void function()
{

日期:02/03/2009 05:08:08 作者: wanghe334
内容分类