linux
文章平均质量分 72
木兰宿莽
欢迎交流,email: xujiweigo@163.com,wechat:xujiwei816598
展开
-
netlink——linux内核空间和用户空间的通信方法
一、netlink简介Netlink是linux继承于unix的一种基于socket的内核态与用户态进程间通信(PCI)机制。linux的进程间通信有多种机制,比方管道(Pipe)、共享内存(shmget)等。Netlink的方式有很多优点,最为重要的是其可以支持内核态和用户态进程间的通信。1. Netlink与sysfs和ioctl的区别linux中支持用户态和内核态的进程通信方式还原创 2017-12-18 13:54:58 · 843 阅读 · 0 评论 -
Linux下的防火墙
大家对于windows下的防火墙肯定不陌生,但是linux下的防火墙大家恐怕一时会想不起来。linux下的防火墙不叫firewall而是换成了iptables。iptables命令是Linux上常用的防火墙软件,是netfilter项目的一部分。可以直接配置,也可以通过许多前端和图形界面配置。语法:iptables(选项)(参数) 选项:-t<表>:指定要操纵的表;-A:向规则链中添...原创 2018-05-17 19:01:41 · 198 阅读 · 0 评论 -
ubuntu环境下编译安装和测试FreeRDP
简介: RDP(Remote Desktop Protocol)是远程桌面连接协议,FreeRDP是RDP的一种实现而且重要的是它开源。RDP协议很复杂,包括BCGR、EUSB、EFS和ESC等等协议,而且连接有GateWay的网络还会涉及到RPC等协议。如果想要全部弄懂比较费时间和精力,如果真的感兴趣倒是可以一试。这里只是讲解一下,在ubuntu环境中如何编译FreeRDP的源代码,事实上...原创 2018-05-11 11:44:26 · 7272 阅读 · 4 评论 -
Linux内核API —— __wake_up
函数原型: void __wake_up(struct wait_queue_head* q, unsigned int mode, int nr, void* key);功能: 此函数用于唤醒等待队列中的处于特定状态中的进程。当该进程的状态为mode时,则有可能被唤醒获得cpu资源,从而被调度执行。进程状态定义: 在linux/sched.h中有进程相关的状态定义。/* * ...原创 2018-04-20 19:10:11 · 2003 阅读 · 0 评论 -
git同步一个fork项目
场景: 我们git fork一个项目后,如果原项目本身有更新,那么我们需要同步更新自己fork的代码。方法: 1. 给fork配置一个remote git remote -v查看当前fork项目的remote信息,我这里以FreeRDP为例 upstream https://github.com/FreeRDP/FreeRDP.git (fetch) up...原创 2018-04-17 11:07:44 · 590 阅读 · 0 评论 -
linux下如何写一个秒字符设备
做linux内核驱动,最重要的一种设备驱动就是字符设备驱动,也是最基本的最需要彻底掌握的。字符设备几个重要的结构体和接口函数:字符设备结构体struct cdev初始化字符设备cdev_init(struct cdev*,struct file_operations*);注册或者说添加一个字符设备到内核cdev_add(struct cdev*,int,int);删除某个字符设备cd...原创 2018-04-11 12:14:34 · 335 阅读 · 0 评论 -
git push origin master时出错:fatal: 'origin' does not appear to be a git repository
背景: 最近将ubuntu更新到ubuntu16.04,然后git了几个项目,发现提交修改时总是报错,fatal: 'origin' does not appear to be a git repository。我以前用ubuntu14.04时从来没遇到过这样的错误,一时不知如何解决。 网上搜索了一下,有使用以下方法的: 输入:git remote add origin git@...原创 2018-04-08 13:47:51 · 16591 阅读 · 2 评论 -
linux下如何自己编写一套动态链接库(shared object)
场景: 很多时候我们写代码的时候会经常用到某些代码段,比方说求两个或几个整数的和或者将一个整形数组转化为二叉树等等。经常使用这些代码,但是每一次又得重新再写一遍,次数多了等于就是重复无用劳动了。所以,可以自己动手写一个自己的动态链接库,保存起来。下次用到只需要加上库就ok了,这样既方便了自己又对动态链接库本身的工作原理理解更深了。linux下动态链接库: 简介 windows的链...原创 2018-03-22 15:06:55 · 882 阅读 · 1 评论 -
如何解决apt-get update出现The following signatures were invalid: NODATA 1 NODATA 2问题
最近新安装了ubuntu12.04的虚机,但是在更新apt-get时老是报The following signatures were invalid: NODATA 1 NODATA 2的问题,然后网上搜索了解决方法,发现都不管用。比方如下方法:sudo apt-get cleancd /var/lib/aptsudo mv lists lists.oldsudo mkdir -p list...原创 2018-03-12 13:18:16 · 4600 阅读 · 0 评论 -
opensc工具的基本用法
################################################################################以下内容整理自:http://www.gooze.eu/howto/smartcard-quickstarter-guide/smart-card-initialization1.Install a smart card reader an...转载 2018-03-09 16:53:46 · 3939 阅读 · 0 评论 -
数据结构——链表
工作之后很少再从头开始实现基础数据结构,最近试着写一写,发现还是有很多知识只能在写的过程中才能去体会,而不是想当然的认为造个轮子就是依葫芦画瓢了。一些细节上的处理,不管是数据结构本身的知识点,还是语言语法本身的知识点同样也只能在写的过程中才能更好的理解和把握。废话不多说,C++实现一个list模板。数据结构最重要的四个特征:增、删、查、改。这里没有实现改的api,主要是因为对于list而言,“改”...原创 2018-02-27 08:53:21 · 188 阅读 · 0 评论 -
学习笔记整理
一、ubuntu为没有root用户密码创建并设置密码。sudo passwd root二、挂载cifs网络文件系统mount -t cifs -o rw,username=user,passward=user //[IP]/dir /dist_dir三、ubuntu环境下安装配置和使用samba1.安装sudo apt-get install sambas原创 2017-12-27 15:05:52 · 269 阅读 · 0 评论 -
cloc工具统计项目代码量
通常开始接手一个项目时,往往不清楚项目到底有多大,代码量具体有多少行。linux下提供了一个很好的工具cloc来计算项目的代码量。一、首先需要安装cloc,这里以ubuntu为例。sudo apt-get install cloc二、查看cloc的使用方法,使用cloc --helpdefined(%hash) is deprecated at /usr/bin/cloc line原创 2017-12-21 17:28:23 · 2940 阅读 · 0 评论 -
linux下使用libusb获取系统usb设备具体信息
libusb简介原创 2017-12-12 18:54:19 · 28159 阅读 · 6 评论