Linux中的内存分配和释放之__alloc_pages()函数分析
在上篇文章的结尾,我们说会在接下来的文章分析分配函数的具体代码,结合我上篇文章说的伙伴机制和冷热区的概念,更好得去理解这个分配过程。好了,我们不再多说了,我们现在开始分析代码吧。 struct page * fastcall __alloc_pages(unsigned int gfp_mask, unsigned int order,struct zonelist *zonelist) { co…
在上篇文章的结尾,我们说会在接下来的文章分析分配函数的具体代码,结合我上篇文章说的伙伴机制和冷热区的概念,更好得去理解这个分配过程。好了,我们不再多说了,我们现在开始分析代码吧。 struct page * fastcall __alloc_pages(unsigned int gfp_mask, unsigned int order,struct zonelist *zonelist) { co…
提示 :最好用root用户进行操作,因为root才能显示所有用户的进程等相关信息。 查看进程ps Linux ps (英文全拼:process status) 命令用于显示当前进程的状态,类似于 windows 的任务管理器 -A 选择所有进程 -e 与-A相同 -f 完整格式列表 ps -ef ps -ef | grep 进程号 # grep:搜索显示 查看端口 netstat(Centos-U…
5.1 socket地址API 大端字节序:高字节存储在低地址处,反之亦然。 小端字节序:高字节存储在高地址处,反之亦然。 由于不同的主机可能使用不同的字节序,为了使数据能在两台使用不同字节序的主机之间直接传递,需要统一发送出去的数据的格式: 发送端总是把要发送的数据转化成 大端字节序 后再发送,接收端知道对方发过来的数据是大端字节序,所以接收端可以根据自身采用的字节序来决定是否对接收到的数据进行…
· IP checksum a. 接收报文 struct iphdr *iph = ip_hdr(skb); if (unlikely(ip_fast_csum((u8 *)iph, iph->ihl))) goto checksum_error; b. 发送报文 ip_send_check(iph); { iph->check = 0; iph->c…
【Linux之IO系统编程学习】 项目代码获取: https://gitee.com/chenshao777/linux_-io.git (麻烦点个免费的Star哦,您的Star就是我的写作动力!) 02.write函数和read函数 目录 一、write函数(man手册) 二、read函数(man手册) 三、写入+读取实验 四、lseek函数 五、写入+读取实验(加入读写指针移动) 一、writ…
linuxFB 直接往FrameBuffer写数据 只支持软件渲染(software-rendered),所以没有gpu的片子选这个 某些配置会使显示性能受到抑制 命令行可使用命令 QT_QPA_PLATFORM=linuxfb:fb=/dev/fb1 和 -platform linuxfb 使qt程序运行在该plugin上 另外指定fb用 fb=/dev/fbN ,分配显示区大小 size=&l…
为Goland创建快捷方式 在Linux环境安装某些软件,不会自动创建应用程序快捷方式,需要用户手动编写.desytop文件,这里以GoLand为例。 GoLand的官方下载渠道提供的是一个压缩包。解压之后不会有桌面快捷方式。每次启动都需要在终端打开安装软件目录下的/bin/goland.sh,很麻烦。其实可以通过.desktop文件手动创建快捷方式。 在/usr/share/applicatio…
首先感谢下我转载的博主,然后再感谢下csdn 另外一个博主文章,帮我解决了一个问题: 下面就是我自己总结的linux下搭建svn服务器的流程 鉴于在搭建时,参考网上很多资料,网上资料在有用的同时,也坑了很多人 本文的目的,也就是想让后继之人在搭建svn服务器时不再犯错,不再被网上漫天的坑爹作品所坑害,故此总结 /******开始*********/ 系统环境:Centos 6.5 第一步:通过yu…
解决方法 1、首先查看共享文件夹是否建立,如果没有的话请参考其他博客。 vmware-hgfsclient 2、去到 /mnt/hgfs 目录下,执行 ls -l 查看权限,可以看到这里可读可执行,但是不可写的,归属人是root,这就是根源所在。 3、输入命令修改权限,再查看权限 ls -l, 可以看到变为可写的,归属人也变了。 sudo chmod 777 ./hgfs 4、修改归属人和归属组,…
前文回顾 《Linux驱动开发(一)—环境搭建与hello world》 《Linux驱动开发(二)—驱动与设备的分离设计》 《Linux驱动开发(三)—设备树》 《Linux驱动开发(四)—树莓派内核编译》 《Linux驱动开发(五)—树莓派设备树配合驱动开发》 《Linux驱动开发(六)—树莓派配合硬件进行字符驱动开发》 继续宣传一下韦老师的视频 70天30节Linux驱动开发快速入门系列课程…