<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[weixin_42268479的博客]]></title><description><![CDATA[]]></description><link>https://blog.csdn.net/weixin_42268479</link><language>zh-cn</language><generator>https://blog.csdn.net/</generator><copyright><![CDATA[Copyright &copy; weixin_42268479]]></copyright><item><title><![CDATA[模电截图111]]></title><link>https://blog.csdn.net/weixin_42268479/article/details/152522038</link><guid>https://blog.csdn.net/weixin_42268479/article/details/152522038</guid><author>weixin_42268479</author><pubDate>Sat, 04 Oct 2025 22:39:07 +0800</pubDate><description><![CDATA[波形发生器（方波、三角波、正弦波等）]]></description><category></category></item><item><title><![CDATA[arm相关]]></title><link>https://blog.csdn.net/weixin_42268479/article/details/125633858</link><guid>https://blog.csdn.net/weixin_42268479/article/details/125633858</guid><author>weixin_42268479</author><pubDate>Wed, 06 Jul 2022 10:02:51 +0800</pubDate><description><![CDATA[几个网站的记录留着慢慢看]]></description><category></category></item><item><title><![CDATA[中断（mark）]]></title><link>https://blog.csdn.net/weixin_42268479/article/details/125523405</link><guid>https://blog.csdn.net/weixin_42268479/article/details/125523405</guid><author>weixin_42268479</author><pubDate>Wed, 29 Jun 2022 15:42:59 +0800</pubDate><description><![CDATA[mark]]></description><category></category></item><item><title><![CDATA[链接装载2]]></title><link>https://blog.csdn.net/weixin_42268479/article/details/124845868</link><guid>https://blog.csdn.net/weixin_42268479/article/details/124845868</guid><author>weixin_42268479</author><pubDate>Wed, 18 May 2022 16:45:21 +0800</pubDate><description><![CDATA[动态链接查看网上资料
程序内存分布：
https://zhuanlan.zhihu.com/p/348171413

]]></description><category></category></item><item><title><![CDATA[编译链接装载]]></title><link>https://blog.csdn.net/weixin_42268479/article/details/124670048</link><guid>https://blog.csdn.net/weixin_42268479/article/details/124670048</guid><author>weixin_42268479</author><pubDate>Mon, 09 May 2022 17:31:05 +0800</pubDate><description><![CDATA[一、
使用GCC编译代码的时候，可以分解为4个步骤：
预处理
编译：编译的过程就是把预处理完成的文件进行一系列词法分析、语法分析、语义分析以及优化后生产相应的汇编代码文件。
汇编：汇编器是将汇编代码转变成机器可以执行的指令。
链接：链接的主要内容就是把各个模块之间相互引用的部分都处理好，使得各个模块之间能够正确的衔接。链接的过程主要包括了地址和空间分配、符号决议（符号绑定）、重定位等步骤。

...]]></description><category></category></item><item><title><![CDATA[计算机组成]]></title><link>https://blog.csdn.net/weixin_42268479/article/details/119379381</link><guid>https://blog.csdn.net/weixin_42268479/article/details/119379381</guid><author>weixin_42268479</author><pubDate>Wed, 04 Aug 2021 10:58:32 +0800</pubDate><description><![CDATA[笔记

]]></description><category></category></item><item><title><![CDATA[学习路线（一）]]></title><link>https://blog.csdn.net/weixin_42268479/article/details/117279479</link><guid>https://blog.csdn.net/weixin_42268479/article/details/117279479</guid><author>weixin_42268479</author><pubDate>Wed, 26 May 2021 09:13:37 +0800</pubDate><description><![CDATA[1、代码
C语言
python
Makefile
Cmake
2、硬件
ahb总线
spi
i2c
usb
uart
串口
gpio
flash
3、操作系统
linux
rtos
BootLoader
kernel
rootfs
中断
驱动程序
4、
arm
riscv
5、书
嵌入式Linux应用开发完全手册
Linux设备驱动
============================================================
一、
计算机原理
微机原理
二、
程序员的自我修养
三]]></description><category></category></item><item><title><![CDATA[qsort面对大数如何处理]]></title><link>https://blog.csdn.net/weixin_42268479/article/details/116782914</link><guid>https://blog.csdn.net/weixin_42268479/article/details/116782914</guid><author>weixin_42268479</author><pubDate>Fri, 14 May 2021 10:51:50 +0800</pubDate><description><![CDATA[leetcode 260
/**

Note: The returned array must be malloced, assume caller calls free().
/
int cmpfunc (const void * a, const void * b)
{
if ((long long int*)a &gt; 0 &amp;&amp; (long long int)b &lt; 0) {
return 1;
}
else if ((long long int)a &lt; 0 &amp;&]]></description><category></category></item><item><title><![CDATA[操作系统555]]></title><link>https://blog.csdn.net/weixin_42268479/article/details/115454497</link><guid>https://blog.csdn.net/weixin_42268479/article/details/115454497</guid><author>weixin_42268479</author><pubDate>Tue, 06 Apr 2021 09:46:25 +0800</pubDate><description><![CDATA[3.9	内核内存分配
当用户态进程需要额外内存时，可以从内核所维护的空闲帧链表中获取页。该链表通常由页替换算法（例如上面页面置换介绍的算法）来更新，且如前所述，这些页帧通常分散在物理内存中。另外，如果用户进程只需要一个字节的内存，那么会产生内部碎片，这是因为进程会得到整个页帧。
但是，内核内存的分配通常是从空闲内存池中获取的，而并不是从满足普通用户模式进程的内存链表中获取的。这主要有两个原因：
（1）内核需要为不同大小的数据结构分配内存，其中有的不到一页。因此，内核必须谨慎使用内存，并试图减低碎片浪费。
（]]></description><category></category></item><item><title><![CDATA[操作系统444]]></title><link>https://blog.csdn.net/weixin_42268479/article/details/115454360</link><guid>https://blog.csdn.net/weixin_42268479/article/details/115454360</guid><author>weixin_42268479</author><pubDate>Tue, 06 Apr 2021 09:43:20 +0800</pubDate><description><![CDATA[3.8	用户空间内存分配

3.8.1	按需分配
一个执行程序从磁盘载入内存的时候有两种方法。

选择在程序执行时，将整个程序载入到内存中。不过这种方法的问题是可能开始并不需要整个程序在内存中。如有的程序开始时带有一组用户可选的选项。载入整个程序，也就将所有选项的执行代码都载入到内存中，而不管这些选项是否使用。
另一种选择是在需要时才调入相应的页。这种技术称为按需调页(demand paging)，常为虚拟内存系统所采用。

按需调页系统看类似于使用交换的分页系统，进程驻留在第二级存储器上（通常为磁盘）。当]]></description><category></category></item><item><title><![CDATA[操作系统333]]></title><link>https://blog.csdn.net/weixin_42268479/article/details/115454185</link><guid>https://blog.csdn.net/weixin_42268479/article/details/115454185</guid><author>weixin_42268479</author><pubDate>Tue, 06 Apr 2021 09:34:17 +0800</pubDate><description><![CDATA[3.7	用户空间与内核空间
3.7.1	说明
Linux 简化了分段机制，使得虚拟地址与线性地址总是一致，因此，Linux 的虚拟地址空间也为0～4G 字节（32bit）。Linux 内核将这4G 字节的空间分为两部分。将最高的1G 字节（从虚拟地址0xC0000000 到0xFFFFFFFF），供内核使用，称为“内核空间”。而将较低的3G 字节（从虚拟地址0x00000000 到0xBFFFFFFF），供各个进程使用，称为“用户空间”。因为每个进程可以通过系统调用进入内核，因此，Linux 内核由系统内的]]></description><category></category></item><item><title><![CDATA[操作系统222]]></title><link>https://blog.csdn.net/weixin_42268479/article/details/115407147</link><guid>https://blog.csdn.net/weixin_42268479/article/details/115407147</guid><author>weixin_42268479</author><pubDate>Fri, 02 Apr 2021 20:23:11 +0800</pubDate><description><![CDATA[3	内存管理
3.1	背景
CPU所能直接访问的存储器只有内存和处理器内部的寄存器。CPU只能从内存和处理器内的寄存器中读取指令或数据，如果数据不在内存或缓存中，那么CPU必须先通过指令将数据从外存中转移到内存中。
首先确保每个进程都有独立的内存空间。需要确定进程可以访问的合法地址的范围，并确保进程只访问其合法地址。
基地址寄存器
界限地址寄存器
使用基地址寄存器保存用户进程合法的最小物理地址，使用界限地址寄存器保存用户进程的地址的范围大小

3.2	地址绑定
输入队列：进程在执行时可以在磁盘和内存之间移动]]></description><category></category></item><item><title><![CDATA[Linux内存管理一：分段和分页]]></title><link>https://blog.csdn.net/weixin_42268479/article/details/107790628</link><guid>https://blog.csdn.net/weixin_42268479/article/details/107790628</guid><author>weixin_42268479</author><pubDate>Tue, 04 Aug 2020 16:45:27 +0800</pubDate><description><![CDATA[https://cloud.tencent.com/developer/article/1172683

]]></description><category></category></item><item><title><![CDATA[【操作系统】操作系统概念]]></title><link>https://blog.csdn.net/weixin_42268479/article/details/107685307</link><guid>https://blog.csdn.net/weixin_42268479/article/details/107685307</guid><author>weixin_42268479</author><pubDate>Thu, 30 Jul 2020 11:02:07 +0800</pubDate><description><![CDATA[用户态/内核态
动态链接/静态连接
1	进程管理
1.1	进程状态：
新的：进程正在被创建
运行：指令正在被执行
等待：进程等待某个事件的发生（如I/O完成或收到信号）
就绪：进程等待分配处理器
终止：进程完成执行
1.2	进程控制块（PCB）：
每个进程在操作系统中用进程控制块来表示，PCB一般包括：进程状态、程序计数器、CPU寄存器、CPU调度信息、内存管理信息、记账信息、I/O状态
1.3	进程调度
调度队列
就绪队列：通常用链表实现，其中头结点指向链表的第一个和最后一个PCB块的指针。每个PCB包括]]></description><category></category></item><item><title><![CDATA[【知识点】存储器]]></title><link>https://blog.csdn.net/weixin_42268479/article/details/107153676</link><guid>https://blog.csdn.net/weixin_42268479/article/details/107153676</guid><author>weixin_42268479</author><pubDate>Mon, 06 Jul 2020 11:42:32 +0800</pubDate><description><![CDATA[MAR(Memory Address Register，存储地址寄存器)
MDR（memory data register，存储数据寄存器）
现代计算机，图中的驱动器、译码器和读写电路都在主存中，而MAR、MDR都在cpu中。

]]></description><category></category></item><item><title><![CDATA[dfs和bfs]]></title><link>https://blog.csdn.net/weixin_42268479/article/details/106737293</link><guid>https://blog.csdn.net/weixin_42268479/article/details/106737293</guid><author>weixin_42268479</author><pubDate>Sat, 13 Jun 2020 20:03:31 +0800</pubDate><description><![CDATA[433

]]></description><category></category></item><item><title><![CDATA[滑动窗口-前缀和]]></title><link>https://blog.csdn.net/weixin_42268479/article/details/106352635</link><guid>https://blog.csdn.net/weixin_42268479/article/details/106352635</guid><author>weixin_42268479</author><pubDate>Tue, 26 May 2020 11:39:59 +0800</pubDate><description><![CDATA[209
1004

]]></description><category></category></item><item><title><![CDATA[操作系统111]]></title><link>https://blog.csdn.net/weixin_42268479/article/details/106262019</link><guid>https://blog.csdn.net/weixin_42268479/article/details/106262019</guid><author>weixin_42268479</author><pubDate>Thu, 21 May 2020 17:03:43 +0800</pubDate><description><![CDATA[leetcode  739   962

]]></description><category></category></item><item><title><![CDATA[几个网站]]></title><link>https://blog.csdn.net/weixin_42268479/article/details/100877738</link><guid>https://blog.csdn.net/weixin_42268479/article/details/100877738</guid><author>weixin_42268479</author><pubDate>Mon, 16 Sep 2019 09:42:01 +0800</pubDate><description><![CDATA[https://wizardforcel.gitbooks.io/the-art-of-programming-by-july/content/06.07.html
https://www.kancloud.cn/kancloud/the-art-of-programming/41618

]]></description><category></category></item></channel></rss>