Welcome 微信登录

首页 / 操作系统 / Linux

Linux下的run-level

Linux下的run-level

Linux操作系统自从开始启动至启动完毕需要经历几个不同的阶段,这几个阶段就叫做runlevel,同样,当Linux操作系统关闭时也要经历另外几个不同的runlevel,下面我们就准备详细介绍一下runlevel,并向您展示一些小技巧来让您的Linux系统避免不必要的重启动。 runlevel可以认为是系统状态,形象一点,您可以认为runlevel有点象微软的windows操作系统中的Normal,safemode,和Command prompt only...
在Windows平台下使用安装GCC(图)

在Windows平台下使用安装GCC(图)

我想将linux机 器上的一个程序拿到Windows下用。直接将souWindowsrce codes拷贝到Windows下无法用Windows的C编译器编译,大概是缺少一些库吧。后来,想到Linux下那些文件是用ccgcc编译的,因 此,觉得要是有Windows版本的或ccgcc编译器那就很值得一试了。 后来在网上搜了半天,似乎没有现成的Windows版本的cc或gcc编译器。不过,如果使用Cygwin, 它可以带有gcc编译器。Cygwin我一两年...
Linux下多线程编程学习

Linux下多线程编程学习

1 引言 线程(thread)技术早在60年代就被提出,但真正应用多线程到操作系统中去,是在80年代中期,solaris是这方面的佼佼者。传统的 Unix也支持线程的概念,但是在一个进程(process)中只允许有一个线程,这样多线程就意味着多进程。现在,多线程技术已经被许多操作系统所支持,包括Windows/NT,当然,也包括Linux。 为什么有了进程的概念后,还要再引入线程呢?使用多线程到底有哪些好处?什么的系统应该选用多线程?我们首先必须回答这...
Linux网络编程学习之select()详解

Linux网络编程学习之select()详解

select系统调用是用来让我们的程序监视多个文件句柄(file descriptor)的状态变化的。程序会停在select这里等待,直到被监视的文件句柄有某一个或多个发生了状态改变。文件在句柄在Linux里很多,如果你man某个函数,在函数返回值部分说到成功后有一个文件句柄被创建的都是的,如man socket可以看到“On success, a file descriptor for the new socket is returned.”而man 2...
Linux内核的ioctl函数学习

Linux内核的ioctl函数学习

我这里说的ioctl函数是在驱动程序里的,因为我不知道还有没有别的场合用到了ioctl, 所以就规定了我们讨论的范围。为什么要写篇文章呢,是因为我前一阵子被ioctl给搞混了,这几天才弄明白它,于是在这里清理一下头脑。一、 什么是ioctl。ioctl是设备驱动程序中对设备的I/O通道进行管理的函数。所谓对I/O通道进行管理,就是对设备的一些特性进行控制,例如串口的传输波特率、马达的转速等等。它的调用个数如下:int ioctl(int fd, ind ...
Linux内核编译小结

Linux内核编译小结

初步了解Linux编译内核:Linux默认内核存放路径为/bootLinux内核的版本号:LINUX采用双树系统:一为稳定树,二为开发树。一般是新特性及实验性改进首先在开发树中进行,经过测试后,在稳定树中将作相同改进。从版本号可以看出来,源程序版本号的形式为X。Y。Z,对于稳定树来说,Y是偶数,对于开发树来说Y比稳定树大一(为奇数)如:2.6.9是稳定版本 2.7.18是开发树版本,下载新版本内核访问http://www.kernel.org,编译内核的理...
Ubuntu下PyGtk的开发之 Base.py

Ubuntu下PyGtk的开发之 Base.py

大致感觉PyGtk不难,使用上和Tkinter之类的都差不多。网上说当把逻辑代码和视图代码结合在一起时,PyGtk做的是最好的,应该能在以后的学习中体会到吧。但现在对某些东西仍有疑惑。 PyGtk2.0是一个Python模块的集合,提供了对GTK+2.X的Python接口。 GTK(GIMP Toolkit)是创建图形用户界面的一个库,完全用C语言编写。Base.py#!/usr/bin/envpython#examplebase.pyimport py...
Linux内核IOCTL网络控制框架实现实例分析

Linux内核IOCTL网络控制框架实现实例分析

目录一、概述... 3二、用户空间ioctl控制函数调用形式... 3三、内核主要函数调用框架... 3四、IOCTL框架源代码分析... 44.1、入口函数:sys_ioctl44.2、入口函数跳转... 54.3、sock_ioctl函数... 64.4、二次跳转... 64.5、struct proto_ops结构实例... 94.6、inet_ioctl函数... 104.7、网络主要结构相关字段相互引用图... 13五、调用实践... 151.编...
轻松学习Linux操作系统内核源码的方法

轻松学习Linux操作系统内核源码的方法

针对好多Linux 爱好者对内核很有兴趣却无从下口,本文旨在介绍一种解读linux内核源码的入门方法,而不是解说linux复杂的内核机制;一.核心源程序的文件组织:1.Linux核心源程序通常都安装在/usr/src/linux下,而且它有一个非常简单的编号约定:任何偶数的核心(例如2.0.30)都是一个稳定地发行的核心,而任何奇数的核心(例如2.1.42)都是一个开发中的核心。本文基于稳定的2.2.5源代码,第二部分的实现平台为 RedHat Linux...
Linux服务器配置自己习惯的vim

Linux服务器配置自己习惯的vim

Linux服务器用vim来编辑配置文件和编程还是很不错的,现在已经习惯了这种文本编辑方式.一般拿到新的服务器都需要自己配置一下vim的环境,要不觉得总是不是很顺手.vim初始配置文件位置“~/.vimrc”一般vim会有一个默认的配置文件样本.我一般会cp到用户目录中,然后再修改."cp /usr/share/vim/vim70/vimrc_example.vim ~/.vimrc"一般这个文件就能达到我的要求了.不需要做太多的修改.(如果设置完后,发现功...
Linux下的调试程序GDB

Linux下的调试程序GDB

Linux 包含了一个叫 gdb 的 GNU 调试程序. gdb 是一个用来调试 C 和 C++ 程序的强力调试器. 它使你能在程序运行时观察程序的内部结构和内存的使用情况. 以下是 gdb 所提供的一些功能:1、启动你的程序,可以按照你的自定义的要求随心所欲的运行程序。2、可让被调试的程序在你所指定的调置的断点处停住。(断点可以是条件表达式)3、当程序被停住时,可以检查此时你的程序中所发生的事。4、动态的改变你程序的执行环境。当你启动 gdb 后, 你能...
我的Ubuntu下的C程序代码与GCC及G++的安装

我的Ubuntu下的C程序代码与GCC及G++的安装

我的Ubuntu下的C程序代码如下:打开文本编辑器,打入下面的代码:#include main(){int k;for(k=0;k<3;k++)add();}add(){static int x=0;x++;printf("x=%d ",x);}之后将文件存储为z.c。然后,打开命令行窗口。进入z.c所在目录之后 键入:$gcc -o z z.c发现不能得到正常的结果,通过网上搜索 原来ubuntu并没有在默认的情况下安装c语言编译器。...
<< 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 >>