Linux __setup解析【转】】的更多相关文章

本文转载自:http://blog.csdn.net/fdaopeng/article/details/7895037 __setup这条宏在Linux Kernel中使用最多的地方就是定义处理Kernel的启动参数的函数及数据结构,宏定义如下: #define __setup(str, fn) \__setup_param(str, fn, fn, 0) #define __setup_param(str, unique_id, fn, early) \static char __setup_…
Linux系统解析域名的先后顺序 gd_WWW已经在本地(/etc/hosts)进行指向,但是竟然还能解析到外网,让我百思不得其解.经过不断查找发现域名解析与以下四个文件有关: /etc/hosts /etc/host.conf /etc/resolv.conf /etc/nsswitch.conf 其中nsswitch.conf与系统获取解析的顺序有关. [root@f5ha.com ~]# vi /etc/nsswitch.conf  #找到hosts关键字 #hosts:     db f…
Linux下解析域名除了使用nslookup之外,开可以使用dig命令来解析域名,dig命令可以得到更多的域名信息.dig 命令主要用来从 DNS 域名服务器查询主机地址信息.dig的全称是 (domain information groper).它是一个用来灵活探测DNS的工具.它会打印出>DNS name server的回应. 查询单个域名的 DNS 信息 dig 命令最典型的用法就是查询单个主机的信息. linuxidc@linuxidc:~$ dig www.linuxidc.com ;…
参考:1.DNS原理入门参考:http://www.ruanyifeng.com/blog/2016/06/dns.html 2.http://cn.linux.vbird.org/linux_server/0350dns.php 一. 域名解析与以下四个文件有关: /etc/hosts /etc/host.conf  /etc/resolv.conf /etc/nsswitch.conf 还有 /etc/hosts.allow  /etc/hosts.deny 其中nsswitch.conf与…
linux 中解析命令行参数(getopt_long用法) http://www.educity.cn/linux/518242.html 详细解析命令行的getopt_long()函数 http://www.codeweblog.com/%E8%AF%A6%E7%BB%86%E8%A7%A3%E6%9E%90%E5%91%BD%E4%BB%A4%E8%A1%8C%E7%9A%84getopt_long-%E5%87%BD%E6%95%B0/ C/C++中有哪些简单好用的命令行参数解析工具? h…
引言 Linux是一个多用户,多任务的系统,可以同时运行多个用户的多个程序,就必然会产生很多的进程,而每个进程会有不同的状态.  在下文将对进程的R.S.D.T.Z.X 六种状态做个说明. PROCESS STATE CODES Here are the different values that the s, stat and state output specifiers (header "STAT" or "S") will display to descri…
1.介绍 本篇文章由于因公司项目上线,需要对项目环境进行压力测试.在压测过程中,所有打压机从公网对目标项目服务器进行压力测试,发现和内网压力测试的性能结果差距10倍左右,在调整主机对DNS的解析顺序之后,解决了压测结果差距大的问题. 故此篇文章主要从Linux服务器解析顺序开始分析,了解一下Linux服务器解析顺序,以及速度,最后在对比改变的前后性能差距有多少. 2.主机的DNS解析过程 2.1 主机的解析顺序以及速度 主机DNS解析的步骤如下: 找缓存 找本机的hosts文件 找DNS服务器…
jq是一个linux下很方便的json解析器,平时看json文件都是一行混在一起的,非常不适合阅读. https://stedolan.github.io/jq/download/ 直接到官网上下载,然后像运行普通程序一样运行就可以了. 1.最常用的用法是 ./jq . filename 格式化输出filename 2.将格式化的json输出,反向转换变成一行.(什么,没什么卵用,呵呵,真正碰到需要用的时候愁死你) ./jq -c . filename 还有很多用法,直接上官方说明: https…
通常我们在代码中调用fork()来创建一个进程或者调用pthread_create()来创建一个线程,创建一个进程需要为其分配内存资源,文件资源,时间片资源等,在这里来描述一下linux进程的创建过程及写时复制技术. 一写时复制 子进程和父进程通常拥有着不同的进程内存空间(线程除外),传统的unix在创建子进程后,会复制父进程的地址空间的所有内容,这就十分的低效,因为经常子进程会立即执行exec操作,创建一个崭新的内存空间,另外像进程代码段这样的内存,父子进程只是读,而没有写操作,完全可以共享,…
搞的一个js鉴权认证,先跳转到 gitlib,登录后跳转到我们公司测试接口的页面: 公司gitlib地址:gitlab.cmread.com [INFO][2018-12-17 15:29:00,189][com.migu.reading.auditweb.filter.AuditFilter]3E53B9035909B5ACF59E4ABEB8772EC8 get code 32cb5fcecba8c58f7cddb7ec17fca19cdde9e29f4d07610215bd7007f32b…
windows的域名本地解析文件hosts是可以一个域名对多个IP,如果有一个IP有问题,可以去解析到其他IP Linux的本地解析文件/etc/hosts,是否也可以这样呢.下面做了个测试 先看一下#解析器查询顺序配置文件 [root@hch ~]# cat /etc/host.conf multi on 如果想设置解析顺序,如下内容 #表示先查询本地hosts文件,如果没有结果,再尝试查找BIND dns服务器 order hosts, bind multi on 以on或off做为选项.这…
管道的定义管道的用途管道的操作管道非法read与write内核实现解析管道通信原理及其亲戚通信解析父子进程通信解析亲缘关系的进程管道通信解析管道的注意事项及其性质管道有以下三条性质shell管道的实现与shell命令进行通信system函数与popen函数区别 管道的定义 管道是第一个广泛应用的进程间通信手段.日常在终端执行shell命令时,会大量用到管道.但管道的缺陷在于只能在有亲缘关系(有共同的祖先)的进程之间使用.为了突破这个限制,后来引入了命名管道. 管道的用途 管道是最早出现的进程间通…
目录 00. 目录 01. Shell简介 02. Shell分类 03. 交互式shell和非交互式shell 04. 登录shell和非登录shell 05. Shell类型 06. 参考 00. 目录 @ 参考博客: https://blog.csdn.net/dengjin20104042056/article/details/94669639 01. Shell简介 在计算机科学中,Shell俗称壳(用来区别于核),是指"为使用者提供操作界面"的软件(命令解析器).它类似于D…
遇到要在Linux上处理json的请求,换了熟悉的环境就抓瞎了,需要用心学习基础知识. jq官网:https://stedolan.github.io/jq   1.install   yum install jq 在公司的centos6.3上这样安装成功了,然而自己电脑7.5安装失败,采用源码安装   git clone https://github.com/stedolan/jq.git cd jq autoreconf -i ./configure --disable-maintainer…
1.HOST 本地DNS解析 vi /etc/hosts 添加规则 例如: 223.231.234.33 www.baidu.com 2.网卡配置文件DNS服务地址  vi /etc/sysconfig/network-scripts/ifcfg-eth0 添加规则 例如: DSN1='114.114.114.114' 3.系统默认DNS配置 vi /etc/resolv.conf 添加规则 例如: nameserver 114.114.114.114 系统解析的优先级 1>2>3…
简介 文件系统就是分区或磁盘上的所有文件的逻辑集合. 文件系统不仅包含着文件中的数据而且还有文件系统的结构,所有Linux 用户和程序看到的文件.目录.软连接及文件保护信息等都存储在其中. 不同Linux发行版本之间的文件系统差别很少,主要表现在系统管理的特色工具以及软件包管理方式的不同,文件目录结构基本上都是一样的. 文件系统有多种类型,如: ext2 : 早期linux中常用的文件系统: ext3 : ext2的升级版,带日志功能: RAMFS : 内存文件系统,速度很快: iso9660:…
1.linux内核有个版本,分别是 longterm: 提供长期支持的内核版本 stable: 稳定版本 Beta 测试版…
为了控制进程的执行,linux内核必须有能力挂起正在cpu上运行的进程,换入想要切换的进程,也就是恢复以前某个挂起的进程,这就是linux的进程切换.  1进程切换的时机 一般来说,进程切换都是发生在从中断或者系统调用返回用户态的时候,最常见的是时钟中断.在允许内核抢占的情况下,系统调用被中断打断也有可能会引发进程切换.中断处理和系统调用处理都发生在内核态,所以进程之间的切换实际上也是发生在了内核态. 2进程切换做的工作 2.1切换页全局目录以安装一个新的地址空间. 2.2切换内核态堆栈和硬件上…
简介 文件系统就是分区或磁盘上的所有文件的逻辑集合. 文件系统不仅包含着文件中的数据而且还有文件系统的结构,所有Linux 用户和程序看到的文件.目录.软连接及文件保护信息等都存储在其中. 不同Linux发行版本之间的文件系统差别很少,主要表现在系统管理的特色工具以及软件包管理方式的不同,文件目录结构基本上都是一样的. 文件系统有多种类型,如: ext2 : 早期linux中常用的文件系统: ext3 : ext2的升级版,带日志功能: RAMFS : 内存文件系统,速度很快: iso9660:…
         Linux进程状态:T (TASK_STOPPED or TASK_TRACED),暂停状态或跟踪状态.          向进程发送一个SIGSTOP信号,它就会因响应该信号而进入TASK_STOPPED状态(除非该进程本身处于TASK_UNINTERRUPTIBLE状态而不响应信号).(SIGSTOP与SIGKILL信号一样,是非常强制的.不允许用户进程通过signal系列的系统调用重新设置对应的信号处理函数.)          向进程发送一个SIGCONT信号,可以让其…
Linux是一个分时操作系统,能够在一个cpu上运行多个程序,每个被运行的程序实例对应一个或多个进程,这里介绍一下Linux进程状态. Linux是一个多用户,多任务的系统,可以同时运行多个用户的多个程序,就必然会产生很多的进程,而每个进程会有不同的状态. Linux进程状态:R (TASK_RUNNING),可执行状态. 只有在该状态的进程才可能在CPU上运行.而同一时刻可能有多个进程处于可执行状态,这些进程的task_struct结构(进程控制块)被放入对应CPU的可执行队列中(一个进程最多…
文章转载自:http://hi.baidu.com/shining_pc/item/21abcb32a4d2d484c3cf2950 Linux是一个多用户,多任务的系统,可以同时运行多个用户的多个程序,就必然会产生很多的进程,而每个进程会有不同的状态. Linux进程状态:R (TASK_RUNNING),可执行状态. 只有在该状态的进程才可能在CPU上运行.而同一时刻可能有多个进程处于可执行状态,这些进程的task_struct结构(进程控制块)被放入对应CPU的可执行队列中(一个进程最多只…
windows下使用的是“\”作为分隔符,而linux则反其道而行之使用"/"作为分隔符.所以在windows 环境中获取路径常见 C:\windows\system 的形式,而linux 常见 /user/share 的形式.…
根目录结构如下: 1. / - 根目录: 每一个文件和目录都从这里开始. 只有root用户具有该目录下的写权限.此目录和/root目录不同,/root目录是root用户的主目录. 2. /bin - 用户二进制文件: 包含二进制可执行文件. 系统的所有用户使用的命令都设在这里,例如:ps,ls,ping,grep,cp等. 3. /sbin - 系统二进制文件: 就像/bin,/sbin同样也包含二进制可执行文件. 但是,在这个目录下的linux命令通常由系统管理员使用,对系统进行维护.例如:i…
信号量 一.什么是信号量 信号量的使用主要是用来保护共享资源,使得资源在一个时刻只有一个进程(线程) 所拥有. 信号量的值为正的时候,说明它空闲.所测试的线程可以锁定而使用它.若为0,说明 它被占用,测试的线程要进入睡眠队列中,等待被唤醒. 二.信号量的分类 在学习信号量之前,我们必须先知道--Linux提供两种信号量: (1) 内核信号量,由内核控制路径使用 (2) 用户态进程使用的信号量,这种信号量又分为POSIX信号量和SYSTEM V信号量. POSIX信号量又分为有名信号量和无名信号量…
 一.Linux内核  一个完整可用的操作系统主要由 4 部分组成:硬件.操作系统内核.操作系统服务和用户应用程序,如下图所示:             用户应用程序:是指那些自处理程序. Internet 浏览器程序或用户自行编制的各种应用程序: 操作系统服务程序:是指那些向用户所提供的服务被看作是操作系统的部分功能的程序.在 Linux 操作系统上,这些程序包括 X 窗口系统. shell 命令解释系统以及那些内核编程接口等系统程序. 操作系统内核程序:它主要用于对硬件资源的抽象和访问调度.…
当你在linux下用命令ll 或者ls -la的时候会看到这些字眼,这些字眼表示为不同用户组的权限:r:read就是读权限 --数字4表示w:write就是写权限 --数字2表示 x:excute就是执行权限 --数字1表示 读.写.运行三项权限可以用数字表示,就是r=4,w=2,x=1.所以,-rw-r--r--用数字表示成644. 这里总共会有10个“-”,第一个表示文件类型,如该文件是文件(-表示),文件夹(d表示),连接文件(l表示),后面9个按照三个一组分,如:-rwxrwx--- 7…
当Linux创建一个进程时,会自动创建3个文件描述符0,1,2,分别对应标准输入,标准输出,错误输出.C库中与文件描述符对应的是文件指针.查看C库头文件stdio.h中的源码 typedef struct _IO_FILE FILE; //文件流类型 extern struct _IO_FILE *stdin; /* 标准输入流 */ extern struct _IO_FILE *stdout; /* 标准输出流 */ extern struct _IO_FILE *stderr; /* 错误…
背景 Read the fucking source code! --By 鲁迅 A picture is worth a thousand words. --By 高尔基 说明: Kernel版本:4.14 ARM64处理器,Contex-A53,双核 使用工具:Source Insight 3.5, Visio 1. 介绍 从(二)Linux物理内存初始化中,可知在paging_init调用之前,存放Kernel Image和DTB的两段物理内存区域可以访问了(相应的页表已经建立好).尽管物…
01 xml文件 # user.xml <user> <name>Toy</name> <sex>man</sex> <room/> </user> 其中第 5 行的<room/> xml 节点是空节点,是比较特殊的格式. 02 多条命令解析xml节点 采用多条命令和管道符也可以解析xml节点,方式如下: [~]$ cat user.xml | grep name | sed 's/^.*<name>…