12 2024 档案
摘要:1. suricata使用的包队列数据结构 该队列的顶端top对应常规队列的队尾,入队即顶端添加数据。而该队列的底端bottom对应常规队列的队首,出队即底端弹出数据。
阅读全文
摘要:汇编语言对于大多数程序员来说都是进而远之的,原因当然是汇编语言晦涩难懂,各种指令搞得人头疼,不过汇编语言适当了解一些还是蛮有意思的,今天带大家在Linux上运行第一个汇编程序! 在 Linux 操作系统中,你有很多办法可以实现在屏幕上显示一个字符串,但最简洁的方式是使用 Linux 内核提供的系统调
阅读全文
摘要:Termux docs: https://doc.termux.com Community: https://community.termux.com Search: pkg search <query> Install: pkg install <package> Upgrade: pkg upg
阅读全文
摘要:GNU C语言的"__thread"与C11关键字_Thread_local等效,这里只说一下C11的。 #define thread_local _Thread_local //(since C11, then removed in C23) Since C23, thread_local is
阅读全文
摘要:sar命令Cannot open /var/log/sa/sa*: No such file or directory发现/var/log下没有sa文件夹,建了一个,再运行#sar -o 24(24为当天日期) 就OK了。 该任务是由root的cron进程来建立的。1.建立文件/etc/cron.d
阅读全文
摘要:把load average理解为CPU核心数是错误的,网上以讹传讹. man uptime可见:load average指的是处于task_running或task_uninterruptible状态的进程(或线程)数的平均值.处于task_running状态的进程(或线程),可能正在使用CPU或排
阅读全文
摘要:并发程序设计把程序执行分成可以同时执行的多个线程。这程序设计带来了新的挑战,包括如何管理访问相同数据的不同线程。C11通过包含可选的头文件stdatomic.h和threads.h,提供了一些可选的(不是必须实现的)管理方法。值得注意的是,要通过各种红函数类访问原子类型。当一个线程对一个原子类型的对
阅读全文
摘要:fork和vfork的差别: fork 是 创建一个子进程,并把父进程的内存数据copy到子进程中。 vfork是 创建一个子进程,并和父进程的内存数据share一起用。 man vfork 一下,你可以看到,vfork是这样的工作的, 1)保证子进程先执行。 2)当子进程调用exit()或exec
阅读全文
摘要:只有含 reserve()/capacity() 成员函数的容器才需要用 swap idiom 来释放空间,而 C++ 里只有 vector 和 string 这两个符合条件。在 C++11 中可以直接使用 shrink_to_fit()。 list/deque/set/map 等容器是没有 res
阅读全文
摘要:排名不分先后,按收录时间列表。 1.harlanc 代表作:https://github.com/harlanc/xiu A simple,high performance and secure live media server in pure Rust (RTMP[cluster]/RTSP/W
阅读全文
摘要:人人网原名校内网,于2005年创办,是中国历史最悠久的校园社交网络平台之一,于2009年更名人人网。 2010年代,人人网凭借“偷菜游戏”开心农场火遍大江南北。 2018年11月,多牛传媒以6000万美元收购了人人网相关的社交网络、人人直播及增值业务,人人网App也随之下架。 2019年底,多牛传媒
阅读全文