当前位置: 首页 > 图文教程 > 操作系统 > Unix/Linux > Linux下的软件开发

Unix/Linux
linux查看内存的大小
在linux下写的代码,用的是utf-8,结果拿到XP下运行的时候,所有的中文都成乱码
linux su和sudo命令的区别
linux cron 下的定时执行工具使用技巧
linux 查找进程及终止进程操作的相关命令
redhat linux 安装 gcc编译器
Linux Mplayer播放各种格式的电影
一起回顾一下linux常用命令
Linux 网站项目发布要做哪些配置
linux SSH配合SecureCRT的密匙完美使用方法
GD 编译出错解决方法
Facebook Open Platform编译FAQ
Linux 系统硬盘 优化
linux 挂载详解
linux crontab定时命令
Linux 系统中确保访问三级域名畅通的方法
Linux 特权帐号VS普通帐号
确保Linux系统安全的前提条件 漏洞防护
Linux 监视系统资源使用率
Red Hat Linux上使用BIND建立DNS服务器

Unix/Linux 中的 Linux下的软件开发


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-01   浏览: 32 ::
收藏到网摘: n/a

    1、如何升级、编译内核?

  如果你不想改变内核的版本,直接转到以下第四步。

  1)在任何一个子目录下(但通常是在/usr/src/下)untar解开新的内核源程序:

  tar xvfz linux-x.x.xx.tar.gz (例如linux-2.0.35.tar.gz)

  或者是打补丁(patch):  gzip -cd patch-2.0.35.gz | patch -p0

  打完补丁直接跳到第四步

  2)rm /usr/src/linux   这通常是一个符号连接。

  3)在 /usr/src/ 下建立一个符号连接到你的新内核目录。

  ln -s /usr/src/linux.2.x.xx /usr/src/linux

  老版本的内核可能还要做一下工作:

  cd /usr/include

  rm -rf asm linux scsi

  ln -s /usr/src/linux/include/asm-i386 asm

  ln -s /usr/src/linux/include/linux linux

  ln -s /usr/src/linux/include/scsi scsi

  4)将当前目录变成 /usr/src/linux

  cd /usr/src/linux

  5)变成超级用户  su

  6)配置内核

  如果你在X window下并且希望有图形界面,就用: make xconfig

  (注: 需要安装Tk/Tcl包并且X Server的分辨率在800x600以上)

  如果你不在X Window下或不想使用图形界面,就用:

  make config 或 make menuconfig(推荐),逐个回答完问题后稍等片刻,等提示符出现或图形界面消失,就配置好了系统。

  7)生成新内核,用:

  make dep ; make clean

  make zImage (或用make bzImage进一步压缩内核)

  (注意有大小写区分)

  还有make zlilo/make install等可选择。

  8)如果你用了模块,你还需要生成和安装模块

  make modules

  make modules-install

  depmod -a

  9)检查/etc/lilo.conf,把用的那个目录、那个文件作为 image。例如:image = /boot/vmlinuz (slackware版是/vmlinuz)

  将 /usr/src/linux/System.map 复制到 /boot 目录中,

  将 /usr/src/linux/arch/i386/boot/zImage 复制到 /boot 目录中并改名为 vmlinuz      

  用一个新文件名将新内核拷贝到相应的目录下,如

  cp /usr/src/linux/arch/i386/boot/zImage /boot/zImage2

  然后编辑/etc/lilo.conf文件,把原内核有关的那一段复制一份,如

  image = /boot/vmlinuz

  root = /dev/hda1

  label = linux

  复制后把image改成/boot/zImage2 把label改成newlinux.

  这样新内核与旧内核可以共存,当新内核不能启动时,还有备份在那儿。注意复制后放置的位置,如果没有设置default,则谁是第一项谁就是缺省启动项。

  10)安装新内核并重新起动。

  lilo

  shutdown -r now

  (提示:开机启动LILO、出现"LILO:"提示时,按TAB键显示所有可启动的项(由label定义)

    2、Linux下除了EMACS,有那些写程序用的编辑软件?

  字符方式下有wpe(Window programming environment),非常类似于Borland C++3.1 for DOS。在X Windows下有xwpe,如果用RedHat,CDROM上该有这个东西,还有code-crusader也可以试试,joe,jed/xjed,nedit,kde带的kedit,kbuilder带的ksrcedit等可供参考。其中xjed, ksrcedit是彩色文本编辑,joe/jstar的热键与turbo c基本相同。还可以到166.111.68.98下载C-forge,SourceNavigator,SN是商业软件。

  3、介绍一下Linux中shell提供的叙述语言?

  在DOS下,我们可以把一长串命令写进.BAT文件中,以便自动执行一连串动作,Linux中可以由在profile或.profile中设定alias来完成,当.BAT太过复杂时,可用shell提供的叙述语言(Scripting language)来写:它强大而易用,可以使用变量,有while,for,case if.. then .. else,的语法结构;还可以作为程序设计语言的替代品。

  要撰写一个script,就像在DOS下写.BAT一样,只要编写一个ASCII的文件,内含你想要的指令,然后保存。系统内定的编辑器叫作vi,使用不太方便,也可以使用其它的编辑器如joe或是X下的emacs。以下是vi常用操作法:

  1)加入一段文字到文章中:按下‘ i ’;

  2)离开 vi 但不储存文章:按ESC,再键q!

  3)离开且保存:按ESC,再键wq

  以下是一些shell script范例:

  EXAMPLE 1: first_script

  #!/bin/sh

  # I am a comment

  # don't change the first line - it's got to be there

  echo "Today is `date`"

  echo "My name is "$0

  echo "You gave me the following "$#" parameters: "$*

  echo "First parameter is "$1

  echo "Have you grasped the trick?"

  EXA