1. 在Linux上构建arm开发环境

    可能很多人初次接触编译嵌入式工程都是在IDE上,IDE对于初学者会比较方便,因为他隐藏了包括工程构建、代码调试以及镜像烧写的很多细节。如果希望进一步学习SOC体系结构,在完全的linux环境中进行工程构建和调试是非常必要的,这里逐步介绍如何在完全的linux环境下进行工程构建、代码编译、gdb调试以及烧写镜像的方法,同时使用一个开源项目armdbg1作为step-by-step的例子以供大家参考学习. armdbg ↩

    2020/11/28 arm

  2. ubuntu20.10 无法休眠

    最近在新买的thinkpad x13 amd version上安装Ubuntu20.10时发现合盖无法休眠,也无法唤醒,结果发现是bios中设置suspend模式的问题导致的

    2020/11/14 ubuntu

  3. ubuntu20.10 休眠耗电问题解决

    最近在新买的thinkpad x13 amd版本上安装了ubuntu20.10, kernel verison 5.8, 所有功能基本正常,但发现合盖后休眠状态耗电稍高,大概一个晚上会耗电15%左右,这样休眠状态大概只能放置两天多,而我另外一台thinkpad t490s intel版本大概只有4~5%左右,经过一些研究后基本解决这个问题,目前休眠一天大概耗电3%左右,基本待机放置一两周都没有问题。

    2020/11/14 ubuntu suspend

  4. 使用aircrack破解WiFi密码

    Aircrack-ng是一组用于wifi探测,抓包以及破解的工具集合。WPA是目前主要的wifi身份认证的方式,利用aircrack工具我们可以有效地探测到当前网络中的ap和station信息,并诱导抓取WPA的4次握手认证报文,从而利用字典方式进行破解。 ==声明== : 本文仅用于研究用途!

    2020/10/25 wifi sercurity

  5. x86 实模式和32位保护模式

    @[TOC] x86寻址方式 基址-偏移寻址 x86 cpu的寻址方式在历史早期主要是分片寻址(segmentation),其基本设计是任何地址由base 和 offset组成,通过将地址空间按不同规则切分成多块,每块起始地址作为base,在每个区块的偏移作为offset即可定位到具体物理地址,分片寻址在x86历史主要有两种

    2020/09/01 os

  6. os临界区保护和互斥锁原理

    什么是临界区保护? 临界区(critical region)是指一段特定的代码行为集合,其中可能包括对数据的修改,执行一段特定逻辑等等。

    2020/07/28 os

  7. os调度原理

    @[toc] 为什么要做任务调度-why 操作系统中最为显著的特性就是任务调度,任务调度主要来自于以下几种需求: 程序并发(multiprogram) 任务间同步、消息传递 实时性能要求

    2020/07/06 os

  8. wlan 架构层次

    1. wlan 设备层次架构 对wlan host和firmware的架构从整体上做了一个整理。

    2020/05/30 wlan linux driver

  9. vim_all_in_one_2

    4 vim with plugin vim 一大扩展方式是使用插件,所谓插件其实还是一系列vim脚本,但以一种便于管理的形式组织了起来,其中用于管理插件的本身就是一种插件,插件管理插件比较常用的是vundle

    2020/05/20 vim

  10. vim_all_in_one_1

    总览 近期因为换了工作缘故,尝试完全切换到了vim上进行代码编写工作。在之前其实本人曾多次尝试切换到vim上,但最终总是因为各种各样的问题,或者缺乏某些IDE上熟悉方便的功能替代而放弃,虽然包括vim配置、插件管理等都已经接触过,但一直是抱着认为vim的综合效率实际是不如IDE的想法的。但最近解决了一些之前的几个问题之后,感觉豁然开朗,才真正明白在代码编写的这个场景下,在正确的运用和配置后,vim的确是有极高效率的,效率上限应该是超过ide的,原因在于vim针对代码编写这个场景做了很多特殊的优化。而之前看到的太多vim的介绍文章,要么就是重点不清,要么就是语焉不详以其昏昏使人昭昭,将本身很简单的事情搞得很复杂,因此这里开始自己写一个系列文章,主题就是“vim all in one”,即所有你需要知道的vim知识都在这一个系列文章中即可获得。

    2020/05/15 vim