
Linux
CodeInfo_
站在巨人的肩膀上看世界
展开
-
Linux脚本Shell命令
在向大家详细介绍linux编译之前,首先让大家了解下Linux脚本Shell命令。然后讲解在shell脚本中可以使用任意的unix命令。语法基本介绍1.开头程序必须以下面的行开始(必须方在文件的第一行):#!/bin/bash符号#!用来告诉系统它后面的参数是用来执行该文件的程序。在这个例子中我们使用/bin/bash来执行程序。当编辑好脚本时,如果要执行该脚本转载 2013-09-30 11:05:37 · 572 阅读 · 0 评论 -
关于Patch应用和举例
转自:http://blog.chinaunix.net/u3/100239/showart_1984963.html首先介绍一下diff和patch。在这里不会把man在线文档上所有的选项都介绍一下,那样也没有必要。在99%的时间里,我们只会用到几个选项。所以必须学会这几个选项。1、diff -------------------- NAME转载 2014-03-21 11:03:34 · 792 阅读 · 0 评论 -
ubuntu设置apt-get永久使用http代理
sudo vi /etc/apt/apt.conf在您的apt.conf文件中加入下面这行Acquire::http::Proxy "http://10.176.224.9:3128"; (注意Proxy后面有一个空格,""中为你代理的http和端口)保存apt.conf文件即可转载 2014-03-20 18:55:28 · 1503 阅读 · 0 评论 -
platform_device_add()函数分析
int platform_device_add(struct platform_device *pdev){int i, ret = 0;if (!pdev) /*验证指针的有效性 */ return -EINVAL;if (!pdev->dev.parent)/*都说总线有两个链表,一个是设备链表(通过device 内嵌)一个是驱动链表(通过device_d转载 2014-03-22 10:10:22 · 3326 阅读 · 0 评论 -
介绍struct bus_type非常好的
总线总线是处理器和一个或多个设备之间的通道,在设备模型中, 所有的设备都通过总线相连, 甚至是内部的虚拟"platform"总线。总线可以相互插入。设备模型展示了总线和它们所控制的设备之间的实际连接。在 Linux 设备模型中, 总线由 bus_type 结构表示, 定义在 :struct bus_type { const char * nam转载 2014-03-23 10:07:53 · 2411 阅读 · 0 评论 -
Linux驱动下的platform总线架构(转)
从 Linux 2.6 内核起,引入一套新的驱动管理和注册机制:platform_device 和 platform_driver 。 Linux 中大部分的设备驱动,都可以使用这套机制,设备用 platform_device 表示;驱动用 platform_driver 进行注册。 Linux platform driver 机制和传统的 device drive转载 2014-03-22 10:24:57 · 697 阅读 · 0 评论 -
Ubuntu下配置samba服务器
一.samba的安装: sudo apt-get insall samba // (sudo get temp root auth) sudo apt-get install smbfs二. 创建共享目录: mkdir /home/john/share #这是因为共享自己的用户文件夹会比较好 su转载 2014-03-19 18:44:53 · 474 阅读 · 0 评论 -
struct device结构体(2.6.23)
struct device结构体(2.6.23) 一、定义:linux/include/linux/device.hstruct device { struct klist klist_children; struct klist_node knode_parent; /* node in sibling list */转载 2014-03-24 13:39:10 · 849 阅读 · 0 评论 -
DEVICE_ATTR
sysfs接口函数的建立_DEVICE_ATTR 2012-05-09 11:36:46| 分类:linux文件系统 | 标签:device_attr sysfs接口函数 |字号大中小 订阅说道sysfs接口,就不得不提到函数宏 DEVICE_ATTR,原型是#define DEVICE_ATTR(_name, _mode, _show, _s转载 2014-03-24 14:22:41 · 562 阅读 · 0 评论 -
ubuntu 10.04 虚拟机建立tftp服务器
习惯把总结放到前面通过这个实验,我明白了tftp一些基本的概念问题.知道如何正确的进行上传和下载.这个实验说明了,root下,在tftpboot下,具有666的文件,才能被覆盖掉.深刻体会了chmod 的用法.也明白了读说明书的重要性.反应了我对英文说明书,还是读的能力不够. Ubuntu 的 openbsd-inetd 預設將 tftpd 的路徑指转载 2014-04-20 19:31:54 · 1115 阅读 · 0 评论 -
u-boot源码配置原理分析
作者:杨老师,华清远见嵌入式学院讲师。u-boot的源代码默认是不针对任何目标平台的,当我们要移植u-boot到一个特定的目标平台时,需要生成针对目标平台的配置文件。u-boot目前已经支持的芯片可以在include/configs/下面找到。比如我们要编译针对s3c2410芯片的u-boot.bin,那么我们就需要在u-boot源码根路径下执行:make smdk2410_con转载 2014-04-21 14:54:52 · 583 阅读 · 0 评论 -
查看当前环境下内核导出了哪些符号
查看当前环境下内核导出了哪些符号#cat /proc/kallsyms >log#vi log转载 2014-03-26 19:56:23 · 1131 阅读 · 0 评论 -
Unknown symbol platform_driver_unregister (err 0)
关于那个什么 Unknown symbol platform_driver_unregister (err 0) 等之类的错误,如果内核里有这个函数,比如(注意不一定是在 这个里面,具体看你编译的模块了)platform_driver_unregister这个函数在内核代码中有定义(/drivers/base/Platform.c中)但是还是报错,因为有这一行:EXPORT_SYMBOL_GPL(转载 2014-03-26 19:54:59 · 5776 阅读 · 1 评论 -
linux diff详解
diff是Unix系统的一个很重要的工具程序。它用来比较两个文本文件的差异,是代码版本管理的基石之一。你在命令行下,输入: $ diff diff就会告诉你,这两个文件有何差异。它的显示结果不太好懂,下面我就来说明,如何读懂diff。一、diff的三种格式由于历史原因,diff有三种格式: * 正常格式(normal dif转载 2014-04-09 14:23:04 · 13814 阅读 · 0 评论 -
cat >test<<EOF,more
cat >test(cat >>test同上,cat后好像也可以没空格)创建test文件,并且可以直接在控制台输入文件内容,直到输入EOF,结束输入很方便的东西。more命令,功能类似 cat ,cat命令是整个文件的内容从上到下显示在屏幕上。 more会以一页一页的显示方便使用者逐页阅读,而最基本的指令就是按空白键(space)就往下一页显示,按 b 键就会往回(转载 2014-03-21 10:17:58 · 954 阅读 · 0 评论 -
Ubuntu 12.04下NFS安装配置图解
下面介绍安装步骤1、执行命令:sudo apt-get install nfs-kernel-server 我之前安装了,之所以写下来是防止重装系统后,这些东西都怎么安装。2、执行命令:mkdir /home/song/nfs 建立一个nfs服务的专有的文件夹,这里路径依自己喜好而定!不过要记得这个路径3、建立好文件夹后,接着执行命令:sudo vi转载 2014-03-30 10:50:16 · 775 阅读 · 0 评论 -
Linux命令集
1. 最常用的命令列表下面列出十个在使用linux过程中使用频率最高的命令。这里只作简单介绍,具体用法请参考后面内容。cat,显示文件内容。cd,改变目录路径。cp,复制文件。find,查找文件。grep,搜索、过滤信息。ls,列出目录信息。more,分页显示。rm,删除文件或目录。vi,调用vi文本编辑器转载 2013-09-28 22:52:02 · 489 阅读 · 0 评论 -
linux:你不知道的echo
linux的echo命令功能是在显示器上显示一段文字。一般格式为: echo [ -n ] 字符串。参数n是指行尾不换行echo会将输入的字符串送往标准输出。输出的字符串间以空白字符隔开, 并在最后加上换行号。用echo命令输出字符串能加引号,也能不加引号。加引号时,字符串原样输出;不加引号时,字符串中的各个单词作为字符串输出,各字符串之间用一个空格分割。功能说明:显示文字。语转载 2013-09-28 22:55:34 · 3316 阅读 · 0 评论 -
Linux下进程的建立 并附Linux exec函数族
我们都知道,进程就是正在执行的程序。而在Linux中,可以使用一个进程来创建另外一个进程。这样的话,Linux的进程的组织结构其实有点像Linux目录树,是个层次结构的,可以使用pstree命令来查看。在最上面是init程序的执行进程。它是所有进程的老祖宗。Linux提供了两个函数来创建进程。 1.fork()fork()提供了创建进程的基本操作,可以说它是Linux系统多任务的基转载 2013-11-24 15:48:01 · 699 阅读 · 0 评论 -
LINUX下FORK的运行机制详细解析
摘要:由于fork函数运行机制的复杂性,造就了当两个fork并排时,问题就变得很复杂。解这个题的关键,一是要对linux下进程的机制有一定认识,二是抓住上文提到的几个关于fork的关键点。 今天一位朋友去一个不错的外企面试linux开发职位,面试官出了一个如下的题目: 给出如下C程序,在linux下使用gcc编译:[cpp]转载 2013-11-24 11:04:41 · 765 阅读 · 0 评论 -
信号量 互斥锁 条件变量的区别
信号量用在多线程多任务同步的,一个线程完成了某一个动作就通过信号量告诉别的线程,别的线程再进行某些动作(大家都在semtake的时候,就阻塞在哪里)。而互斥锁是用在多线程多任务互斥的,一个线程占用了某一个资源,那么别的线程就无法访问,直到这个线程unlock,其他的线程才开始可以利用这个资源。比如对全局变量的访问,有时要加锁,操作完了,在解锁。有的时候锁和信号量会同时使用的”也就是说,信号转载 2013-12-15 11:04:30 · 571 阅读 · 0 评论 -
pthread_cond_wait
pthread_cond_wait编辑条件变量是利用线程间共享的全局变量进行同步的一种机制,主要包括两个动作:一个线程等待"条件变量的条件成立"而挂起;另一个线程使"条件成立"(给出条件成立信号)。为了防止竞争,条件变量的使用总是和一个互斥锁结合在一起。1简介多线程的条件变量[1]条件变量是利用线程转载 2013-12-15 11:02:42 · 817 阅读 · 0 评论 -
对linux中多线程编程中pthread_join的理解
对linux中多线程编程中pthread_join的理解分类: 程序员面试 linux学习2013-08-04 21:32 234人阅读 评论(0) 收藏 举报多线程linuxpthread_join函数 在Linux中,默认情况下是在一个线程被创建后,必须使用此函数对创建的线程进行资源回收,但是可以设置Threads attributes来设置当一个线程结束转载 2013-12-14 15:02:31 · 675 阅读 · 0 评论 -
Linux操作系统下的多线程编程详细解析----条件变量pthread_cond_t那些事儿
推荐两个博文:http://www.cnblogs.com/Creator/archive/2012/04/18/2455584.htmlhttp://blog.youkuaiyun.com/sunboy_2050/article/details/6031723(以下内容摘自上述两篇博文) 在多线程编程下,常常出现A线程要等待B线程条件完成后再继续进行,这里等待方式有两转载 2013-12-15 11:19:54 · 888 阅读 · 0 评论 -
Linux makefile 教程 非常详细,且易懂
最近在学习Linux下的C编程,买了一本叫《Linux环境下的C编程指南》读到makefile就越看越迷糊,可能是我的理解能不行。 于是google到了以下这篇文章。通俗易懂。然后把它贴出来,方便学习。 后记,看完发现这篇文章和《Linux环境下的C编程指南》的makefile一章所讲述的惊人的相似,只是这篇文章从一个实例切入,在有些地方比转载 2014-01-13 10:26:22 · 559 阅读 · 0 评论 -
linux日志级别(loglevel)详解
linux日志级别(loglevel)详解 |字号 订阅前几天,我在想printk中到底是哪些信息会打印到console上,哪些东西可以通过dmesg来查看。参考了网上一些资料以及自己做的一些实,总结一下Linux中的console loglevel以及printk, dmesg知识。 只有当printk打印信息时的loglev转载 2014-01-19 15:57:06 · 8920 阅读 · 0 评论 -
linux下Makefile学习--注释很好
什么是makefile?或许很多Winodws的程序员都不知道这个东西,因为那些Windows的IDE都为你做了这个工作,但我觉得要作一个好的和 professional的程序员,makefile还是要懂。这就好像现在有这么多的HTML的编辑器,但如果你想成为一个专业人士,你还是要了解HTML的标识的含义。特别在Unix下的软件编译,你就不能不自己写makefile了,会不会写ma转载 2014-02-24 15:32:44 · 5765 阅读 · 0 评论 -
Ubuntu 11.04下编译kernel
Ubuntu 11.04下编译kernel 1. 下载并解压Linux内核源代码, 内核源码下载地址为www.kernel.org,查看当前内核版本命令为uname -r。下载后解压至目录/usr/src.2. 解压完成后在终端下进入/usr/src/linux-2.6.34.13目录(其中2.6.34.13为我使用的版本号)3. 输入命令make mrprop转载 2014-03-29 22:24:53 · 759 阅读 · 0 评论 -
如何更改linux文件的拥有者及用户组(chown和chgrp)
一、基本知识 在Linux中,创建一个文件时,该文件的拥有者都是创建该文件的用户。该文件用户可以修改该文件的拥有者及用户组,当然root用户可以修改任何文件的拥有者及用户组。在Linux中,对于文件的权限(rwx),分为三部分,一部分是该文件的拥有者所拥有的权限,一部分是该文件所在用户组的用户所拥有的权限,另一部分是其他用户所拥有的权限。对于文件的权限请参考《Linux的chmod命令》转载 2014-03-19 09:10:13 · 707 阅读 · 0 评论