linux内核根据pid,列出家族信息中的程序名和PID号
先写family.c文件代码如下:#include<linux/init.h>
#include<linux/module.h>
#include<linux/kernel.h>
#include <linux/sched.h>
#include <linux/moduleparam.h>
static pid_t pid=1;
module_param(pid,int,0644);
static int family_in...
linux内核模块编程之列出系统中所有内核线程的程序名、PID号、进程状态和优先级
首先我们需要建立一个文件夹,叫plist然后新建两个文件,分别为list.c和Makefile编写Makefileifneq ($(KERNELRELEASE),)
obj-m:=list.o
else
KDIR:= /lib/modules/$(shell uname -r)/build
PWD:= $(shell pwd)
default:
$(MAKE) -C $(KDIR) M=$(PWD) modules
clean:
$(MAKE) -C $(KD...
linux内核实现添加系统调用,实现修改和读取nice值
因操作系统课程设计需要,最近一直在折腾内核编译前前后后折腾了将近三个星期,今天总算做完了第一个实验。下面分享一下具体的经验。一、编译内核这一步之前一直觉得可以省略,反正添加完系统调用后,也要重新编译的。求教老师后,她说直接添加调用,如果出错了,不能分析出是编译的问题还是系统调用的问题。所以,这步还是不能省的喽。准备我使用的是ubuntu 16.04 LTS,下载的是4.4.30的内核。第一个要注意的是:版本不要选择太高的,我第一次就选的4.8.7,结果经过将近8个小时编译后(和电脑配置有关...
PHP的轻量消息队列php-resque
消息队列处理后台任务带来的问题项目中经常会有后台运行任务的需求,比如发送邮件时,因为要连接邮件服务器,往往需要5-10秒甚至更长时间,如果能先给用户一个成功的提示信息,然后在后台慢慢处理发送邮件的操作,显然会有更好的用户体验。为了实现类似的需求,Web项目中一般的实现方法是使用消息队列(Message Queue),比如MemcacheQ,RabbitMQ等等,都是很著名的产品。
win7下安装和配置tomcat7
安装和配置tomcat不需要安装,解压即可用(jdk请自行安装配置,网上一搜一大把)。简单得写下步骤:步骤1:下载tomcat绿色版,并将其放到C盘外的任意磁盘(避免权限问题),比如我放到E盘。下载地址:https://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-7/v7.0.72/bin/apache-tomcat-7.0.72-windows-x64.zip步骤2:配置环境变量,右击”计算机“>“属性”>“高级系统设置...
使用node.js通过github的webhooks,自动更新远程服务器代码
题外话在写这篇文章前,和同学解释可以通过github的webhooks,自动更新远程服务器代码。他直接就问我,为什么不直接在服务器上搭一个git服务器?其实,这个并不是没有尝试过。具体原因大致如下:配置多人协同合作的账号较为麻烦,而且管理起来容易出问题。对于push等日志,缺乏可视化的界面。服务器不够稳定,可能会影响协同合作。鉴于,上述原因,我们团队采用了如题的方式开发。废话不多说,进入正题。一、自动化部署脚本首先要保证要部署的 Web 目录就是 git clone 下来的一个 repos...
Ajax跨域设置请求头,options验证失败解决办法
问题概述昨天晚上调试一个接口,原先通过在后台代码中设置同源策略以解决ajax跨域问题,但是在做最后面的token联调,把token加到请求头中进行权限验证的时候,却提示404(接口仅允许接受POST请求,其他请求方法无法识别).折腾了将近4个小时,然后在网上找到一篇文章,介绍ajax请求中,如果自定义请求头,XHR会首先发送一个OPTIONS嗅探请求,然后 XHR 会根据OPTIONS请求返回的Access-Control-*等头信息判断是否有对指定站点的访问权限,并最终决定是否发送实际请...
Sql语句书写的十大原则
原则1:尽量避免在列上进行运算,这样会导致原语句失效,例如原语句为:select * from table where YEAR(d) >= 2011;
优化为:select * from table where d >= 2011-01-01;
原则2:尽量避免使用join连接查询多个表的数据,如果你一定要使用,也应该用小结果集驱动大结果集,同时把复杂的join查询拆分成多个query语句原则3:注意like的使用,避免% % ,例如原句为:select * from tab...