Welcome 微信登录

首页 / 操作系统 / Linux

制作自己的Linux OS

制作自己的Linux OS

花了几天时间做了个可以光盘启动的Linux系统,大小5.15M,功能包括Linux大多数基本命令一.系统介绍:文件系统用的是ram,速度很快,采用isoLinux光盘启动,可以方便升级kernel和更改root fs(增减Linux命令),实际上这个东西还可以做的更小,考虑到是iso所以不是很在乎空间,如果是嵌入式系统,可以考虑把root fs采用gzip -9压缩存贮.我测试了完全可以在1.44M以内解决问题.制作方法:二.知识背景1.Linux启动首先...
研究Linux内核的目的及态度

研究Linux内核的目的及态度

一.研究Linux内核的目的 欲举其事,先正其道。要谈论内核的研读以及交流心得,前提必须得有一个恰当准确的目的,方能收获良多。很多人都有这样一个疑惑,为什么要研究Linux内核呢?我们又不是内核开发者(或许你将来就会成为Linus的助手:-)。此言差矣,众所周知,Linux包含两层含义,一是内核,二是发行版本,前者乃核心精华,后者则是应用方案,二者皆不可废。知前者而略后者,思而不学也;略前者而知后者,学而不思也。学习是循序渐进的,我们学习Linux,首先接...
Linux内核学习笔记之网卡驱动的详细分析

Linux内核学习笔记之网卡驱动的详细分析

学习应该是一个先把问题简单化,在把问题复杂化的过程。一开始就着手处理复杂的问题,难免让 人有心惊胆颤,捉襟见肘的感觉。读Linux网卡驱动也是一样。那长长的源码夹杂着那些我们陌生的变量和符号,望而生畏便是理所当然的了。不要担心,事情 总有解决的办法,先把一些我们管不着的代码切割出去,留下必须的部分,把框架掌握了,哪其他的事情自然就水到渠成了,这是笔者的心得。 一般在使用的Linux网卡驱动代码动辄3000行左右,这个代码量以及它所表达出来的知识量无疑是庞大...
对话Linux内核守护人Andrew Morton

对话Linux内核守护人Andrew Morton

主持人:谢谢Jonathan Corbet的讲话,接下来我们请Linux内核2.6版的守护人Andrew Morton来做一个对话。Jonathan Corbet:我有几个问题是和大家讨论得出来的,如果有问题的话也可以回答观众的问题,首先有一个问题就是,刚才我也提到过,像在内核当中我们的这种 Pach是比较高的,我想问一下Andrew Morton你如何应对这个问题,就是你如何解决比较高的一个Pach的问题,同时维护它的内核。Andrew Morton:实...
技巧分享 “禁用”Linux终端输出回显

技巧分享 “禁用”Linux终端输出回显

Termios结构是在POSIX规范中定义的一个标准接口,通过设置termios类型的数据结构中值及相关函数调用便可以对终端接口进行控制。控制Linux终端的输出回显主要用到"本地模式"中可用的c_lflag的宏ECHO,ECHO宏定义为:启用输入字符的本地回显功能此功能最常见的应用莫过于控制输入密码的回显,如通过sudo /etc/**获取管理权限或终端登录MySQL时输入的密码是不会显示出来的。而termios结构的定义包含在termios.h头文件中...
学习进阶 利用Linux提升休眠复活技术

学习进阶 利用Linux提升休眠复活技术

黄瀛:大家好,我是来自英特尔科研技术中心上海的黄瀛,今天我给大家介绍一下,我最近做的一点工作。今天先对相关的背景做一个简单的介绍。接下来介绍一下对怎么样增强休眠工作,包括怎么样增加内存的内容,怎么样从休眠的内核中跳回到原内核中去,怎么样恢复状态,包括写出内存镜像,怎么样通过Kexec实现唤醒的功能,接下来我们介绍一下简单的结论。 首先简单介绍一下Kexec,它的功能基本上是把Linux内核变成一个能力,它能够在一个正在执行的Linux系统之中载入另一个...
Linux编程学习历程

Linux编程学习历程

建议学习路径:首先先学学编辑器,vim, emacs什么的都行。然后学make file文件,只要知道一点就行,这样就可以准备编程序了。 然后看看《C程序设计语言》K&R,这样呢,基本上就可以进行一般的编程了,顺便找本 数据结构的书来看。 如果想学习UNIX/LINUX的编程->《APUE》绝对经典的教材,加深一下功底,学习《UNP》的第二卷。这样基本上系统 方面的就可以掌握了。然后再看Douglus E. Comer的《用TCP/IP进...
Linux设备管理文件系统-devfs与sysfs备忘

Linux设备管理文件系统-devfs与sysfs备忘

Linux下有专门的文件系统用来对设备进行管理,devfs和sysfs就是其中2种。 在2.6内核以前一直使用的是devfs,devfs挂载于/dev目录下,提供了一种类似于文件的方法来管理位于/dev目录下的所有设备,我们知道/dev目录下的每一个文件都对应的是一个设备,至于当前该设备存在与否先且不论,而且这些特殊文件是位于根文件系统上的,在制作文件系统的时候我们就已经建立了这些设备文件,因此通过操作这些特殊文件,可以实现与内核进行交互。但是devfs...
Linux命令中的“&”符号给我的教训

Linux命令中的“&”符号给我的教训

这几天在Linux下做一个小项目,花了不少时间调试。也有那么一点经验教训。今天花了一上午在那里调试一个抓网页的小模块。程序写的比较土,是用Linux下面的wget来抓的网页。当时出现的问题就是我用gdb单步调试的时候,一点问题都没有。想抓的链接都一点问题都没有。可是,一旦让程序自己跑,就傻了。400多个链接只能抓到其中很少的一部分,而且有时候会发生文件读写错误。很诡异。一直在那里捣弄,因为很多时候,cout出来的明明显示抓下来了。不知道为什么就是不能将抓下...
Linux开机流程详解

Linux开机流程详解

Linux开机时首先加载BIOS的硬件信息,众所周知BIOS即Basic Input/Output Setup的意思,每次你按下开机键,计算机首先就会加载BIOS的信息,开机时按del键可以进入BIOS进行设置,比如最常用的就是设置从硬盘启动还是从光驱启动或其他,相信装过操作系统的人都知道这个。当然BIOS里面还有相当多的信息,比如硬盘大小,电压等。 如果BIOS是设置从硬盘启动的话,那么读完BIOS后会先去读取第一个开机硬盘的头一个扇区,就是MBR,估...
在Linux操作系统下远程部署Java应用程序

在Linux操作系统下远程部署Java应用程序

工作中需要将升级后的应用程序部署到Linux机器。以前对Linux不太熟悉,在部署的过程学到一些Linux命令。 应用程序是用Java,打包成jar文件。通过java -jar XXXXX.jar启动程序。 我使用F-Secure SSH Client工具,但是一旦关闭远程连接客户端,程序就停止。 后来,还是询问公司同事,使用nohup java -jar XXXXX.jar & 命令可以保证命令在后台运行。 同时,这个命令还会在这个目录下创建一个...
把Linux9.0的内核升级为2.6.18

把Linux9.0的内核升级为2.6.18

昨天终于把Linux9.0的内核升级到了2.6.18,虽然过程很漫长,并碰到了很多问题,但最终还是解决了。 由于要开发Linux2.6内核下设备驱动程序,于是在网上下载了RedHat AS4,用Virtual PC中装了,但是装完之后启动发现,这个版本的Redhat启动后占了CPU近100%,搞的根本就干不了别的事情。先前我在Virtual PC中已经装了Redhat9.0,其启动之后虚拟机只占不到10%的内存。但是Redhat9.0的内核是2.4.20...
Linux程序开发的一些基础概念

Linux程序开发的一些基础概念

在设置Linux的系统路径时,使用冒号分隔每个路径名。如:PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/bin/X11"在Linux中的程序有两种,一种是可执行程序,与Windows下的.exe文件类似,一种是脚本,与Windows下的.bat文件类似。Linux中常用的程序存放路径有以下几个:/bin,该路径存放系统启动时需要使用的程序。/usr/bin,该...
新手学堂 Linux的sort命令使用

新手学堂 Linux的sort命令使用

这天无意间使用到Linux的sort -f的命令,发现sort的一个奇怪问题。sort -f在man里描述为:"fold lower case to upper case characters" ,即忽略大小写的排序。但是使用下来直接用sort居然也是这个结果。后来终于发现问题所在。LC_ALL对sort的结果是有影响的。之前的LC_ALL设置的是zh_CN.GB18030。(使用locale命令可查看)info sort后查证,标准设置为LC_ALL=C...
<< 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 >>