
Linux
SunnyZhou-1024
这个作者很懒,什么都没留下…
展开
-
Linux虚拟内存技术初窥
1. 为什么要用虚拟内存总所周知,从做系统的主要作用是对计算机资源的管理以及程序调度,者其中就包括对内存的管理。现在很多的系统都是用虚拟内存技术来对内存的管理,所谓虚拟内存,就是一种让应用程序觉得它拥有一个很大的内存可以使用,例如对于一个64位的操作系统,操作系统会给应用程序制造一种它可以有2^64Bytes那么大的内存可以使用的假象,虽然实际情况可能是这个电脑上只有4G的内存。对于一个多任务操作系统,如果不适用虚拟内存,计算机所拥有的那点内存显然不够分,虽然我们可以选择增加物理内存的方式让程序拥有更多原创 2020-09-24 17:31:05 · 331 阅读 · 0 评论 -
RPMsg:协议简介
两台计算机可以通过TCP/IP进行通信,那么同一颗芯片上的两个核心怎么通信呢?原创 2020-07-19 22:42:33 · 10994 阅读 · 1 评论 -
RPC原理与FastRPC实现
你到一家餐厅吃饭,店里有一个服务员为你服务。你点完菜之后,服务员就走进了后厨。但是,服务员并不是直接将你点的菜告诉他们店里的厨师,相反的,他打电话到别的店点了外卖,外卖到了之后他将饭菜重新装盘,然后给你端了上来。但是你是不知道这个细节的,在你看来,这次吃饭和以往的任何一次没有区别,服务员端上的饭菜在哪里做的你是不知道的,你和平常一样点了菜然后菜就上了,你并不需要自己去关心怎么找到外卖电话,怎么将饭菜装盘。你只管点菜和吃,除了可能等的时间比以往略久,没有任何区别。这个栗子中,服务员就扮演着RPC 中代理的角色原创 2020-05-01 14:37:43 · 5756 阅读 · 1 评论 -
一只Python小爬虫的Linux定时任务之旅
戳进来,告诉你怎么在Linux上设置定时任务。原创 2020-04-26 20:50:51 · 707 阅读 · 0 评论 -
LLVM,一堆积木的故事
如果我说,C可以像Java一样被虚拟机解释执行,也可以对热点代码使用Just-In-Time(JIT)技术编译,也可以实现“一次编译,到处运行”,你信吗?原创 2020-04-04 20:09:24 · 1139 阅读 · 0 评论 -
冰山之下:使用new申请内存的背后
Linux是个多任务操作系统,同一时段内有多个进程在运行着,它们各自拥有很多的资源,其中比较重要的资源之一就是它们拥有的内存。但毕竟内存资源是有限的,不管你4G、8G或者是64G内存,总归是有个尽头。一个进程可能就耗费几百上千兆内存,操作系统怎么让有限的内存运行更多的进程?解决办法是虚拟内存技术。原创 2020-03-29 16:55:25 · 1839 阅读 · 1 评论 -
内存对齐是什么?为什么要对齐?怎么对齐?
所谓内存对齐,就是将数据存放到一个是字的整数倍的地址指向的内存之中。处理器在执行指令去操作内存中的数据,这些数据通过地址来获取。不论什么数据都有一定的大小,当一个数据所在的地址和它的大小对齐的时候,就说这个数据自然对齐了(naturally aligned),否则就是没对齐。原创 2020-03-18 21:33:06 · 1612 阅读 · 2 评论 -
冰山之下:从extern C到程序链接
extern "C" 是什么?起什么作用? 它背后它和C++的改名机制有什么关系?它和ELF又有什么鲜为人知的秘密?如果你也有着同样的好奇,戳我,我将带你走进科学。不仅能学习C++,还能顺路了解ELF格式、链接器的工作原理。原创 2020-03-07 12:51:54 · 565 阅读 · 0 评论 -
交叉编译和ABI简介
本文介绍交叉编译和与之相关的Application Binary Interface的相关知识。原创 2020-03-05 16:04:27 · 1952 阅读 · 0 评论 -
GCC 命令简明教程
前言GCC,全称The GNU Compiler Collection,包含了 C, C++, Objective-C, Fortran, Ada, Go等语言的编译器前端以及这些语言所依赖的一些库文件。虽然现在的IDE基本可以搞定很多编译的事情,但是很多时候,b比如我们看源码的时候、自己编写一些Python C++扩展模块的时候等,使用IDE可能会比较繁琐,这时候就需要手动编译,需要看懂或者会...原创 2020-02-18 13:40:40 · 848 阅读 · 0 评论 -
FlatBuffer内部解析原理简介
简介Flatbuffer 是一个高效的跨平台、支持多种语言序列化数据的库。最初由谷歌为游戏开发而开发的,现在也用于多种对性能要求严苛的应用中。FlatBuffer有以下优点(直接翻译官网文档,详细介绍看这里):可不需要解析、拆包,而直接访问序列化后的数据;内存利用率高以及读取速度快;灵活性;生成代码量小;强类型;使用方便;代码跨平台无其他依赖。关于使用方法就不多介绍了,对于源...原创 2019-11-05 19:33:00 · 7401 阅读 · 1 评论 -
Ubuntu 下同局域网主机访问Tomcat 服务器
Ubuntu环境下Tomcat的搭建以及配置,让其他主机可以访问Tomcat服务.搭建Tomcat环境自己写些小应用,需要用到服务器,便在Ubuntu环境下搭建了个Tomcat服务器.原创 2017-04-23 09:58:07 · 1777 阅读 · 0 评论 -
Ubuntu 下搜狗输入法无法输入中文解决方法(赠福利)
搜狗输入法在Ubuntu下经常崩溃,去官方论坛发现很多人遇到这问题,并找到了解决方法. - 删除~/.config 下 的SogouPY ,SogouPY.users,sogou-qipanel这三个文件夹,重启输入法即可. - 重启方法 : kill 掉fcitx , 然后命令行输入fcitx,然后再启动qimpanel. ##### shell 脚本 #!/bin/sh #T原创 2017-04-04 13:33:50 · 1375 阅读 · 0 评论