首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

【分享】精简Linux源代码

作者:付汉杰 Linux是现在最流行的操作系统,含有大量的源代码。Xilinx 2020.1使用的Linux 5.4,含有大约67430个文件。大部分文件没有被使用到。...如果我们知道Linux的编译流程的起始时间,那么删除所有访问时间比Linux的编译起始时间早的文件,就能达到精简Linux源代码的目的。在编译Linux之前,可以通过touch命令创建一个文件。...这个文件的atime,就是编译Linux开始时间。因此比较这个文件,和其它Linux文件,就能找到所有访问时间比Linux的编译起始时间早的文件,从而实现精简Linux源代码。...再恢复对应文件,既精简了Linux源代码,也不影响Linux的编译流程。对Linux 5.4进行精简后,剩余大约8800个文件,减少了大约58000个文件,精简了超过87%的文件数量。...以后可以考虑使用tinyconfig来精简Linux源代码

2.6K20

Linux内核源代码分析经验

Linux的最大的好处之一就是它的源码公开。...同时,公开的核心源码也吸引着无数的电脑爱好者和程序员;他们把解读和分析Linux的核心源码作为自己的 最大兴趣,把修改Linux源码和改造Linux系统作为自己对计算机技术追求的最大目标。   ...所有源文件均是相对于目录/usr/src/linux的。   要分析Linux内核源码,首先必须找到各个模块的位置,也即要弄懂源码的文件组织形式。...1、Linux核心源程序通常都安装在/usr/src/linux下,而且它有一个非常简单的编号约定:任何偶数的核心(的二个数为偶数,例如 2.0.30)都是一个稳定地发行的核心,而任何奇数的核心(例如...对具有GPL版权的源代码改动而形成的程序,或使用GPL工具产生的程序,具有使用GPL发表的义务,如公开源代码。   ◆ CREDITS: 光荣榜。

2.7K20
您找到你想要的搜索结果了吗?
是的
没有找到

如何切入 Linux 内核源代码

同样往本质里看过去,学习内核,就是学习内核的源代码,任何内核有关的书籍都是基于内核,而又不高于内核的。    ...而心理上的问题主要有两个,一个是盲目,就是在能够熟练适用Linux之前,对Linux为何物还说不出个道道来,就迫不及待的盲目的去研究内核的 源代码。...有必要再强调一次,学习内核,就是学习内核的源代码,任何内核有关的书籍都是基于内核,而又不高于内核的。...《Linux设备驱动程序》   简称LDD,驱动开发者都要人手一本了。   《深入理解Linux虚拟内存管理》   简称LVMM,是一本介绍Linux虚拟内存管理机制的书。...http://www.kernel.org/ 可以通过这个网站上下载内核的源代码和补丁、跟踪内核bug等。http://kerneltrap.org Linux和BSD内核的技术新闻。

5.8K62

Linux源代码包的安装

Linux 系统中,除了使用二进制软件包管理工具(如 RPM、DEB)安装软件外,还可以选择通过源代码包的方式进行安装。这种方式通常涉及源代码的编译和安装过程,为用户提供了更多的灵活性和定制选项。...本文将介绍源代码包的安装方法、常见步骤以及一些实际的例子,以帮助用户更好地理解和应用源代码安装方式。 1. 源代码包安装简介 源代码包是软件的原始代码文件,通常以压缩包的形式提供。...通过源代码包安装软件可以在系统上进行更细致的配置和定制,适应特定的需求和环境。源代码包的安装通常包含以下步骤: 下载源代码包。 解压源代码包。 进入源代码目录。 执行配置、编译和安装命令。 2....源代码包安装步骤 2.1 下载源代码包 通常,源代码包可以从软件官方网站或版本控制系统中获取。...2.2 解压源代码包 使用 tar 命令解压下载的源代码包: tar -xzvf software.tar.gz bashCopy code 2.3 进入源代码目录 进入解压后的源代码目录: cd software

14510

Linux源代码软件包

Linux 系统中,软件包管理是系统运维中一项关键的任务。除了常见的二进制软件包,还存在一类特殊的软件包类型,即源代码软件包。本文将深入探讨源代码软件包的概念、优势以及在 Linux 中的应用。...什么是源代码软件包? 源代码软件包是一种软件分发形式,其中包含了程序的源代码以及构建和安装所需的其他文件。与二进制软件包不同,源代码软件包需要用户在其系统上进行编译,以生成可执行文件。...源代码软件包的主要组成部分 源代码软件包通常包含以下主要组成部分: 源代码: 包含软件的原始程序代码,用户可以查看和修改。...在 Linux 中使用源代码软件包 在 Linux 中,用户可以通过以下步骤使用源代码软件包: 下载源代码: 从软件的官方网站或版本控制系统中获取源代码压缩包。...系统一致性: 使用源代码软件包可能导致系统中存在多个不同版本的相同软件,需要谨慎管理。 结语 源代码软件包为 Linux 系统用户提供了更高程度的灵活性和控制权。

6310

linux ldd命令源代码,Linux中ldd命令的用法详解

Linux中ldd命令主要用于查看程式运行所需的共享库,那么ldd命令具体要如何使用呢?下面小编就给大家介绍下Linux下ldd命令的使用方法,感兴趣的朋友一起来学习下吧。...ldd命令的本质是执行了:/lib/ld-linux.so.* 我们可以从以上的内容中(ls /usr中)发现:/lib/ld-linux.so.2 (0xb7fad000)。...$ ls -l /lib/ld-linux.so.* lrwxrwxrwx 1 root root 9 2009-09-05 22:54 /lib/ld-linux.so.2 -》 ld-2.9.so...如果是libc5则是/lib/ld-linux.so.1, 而glibc2应该是/lib/ld-linux.so.2。...我们知道,ld-linux.so模块会先于executable模块程序工作,并获得控制权,因此当上述的那些环境变量被设置时,ld-linux.so选择了显示可执行模块的dependency。

3.1K20

linux内核写时复制机制源代码解读

作者简介 韩传华,就职于国内一家半导体公司,主要从事linux相关系统软件开发工作,负责Soc芯片BringUp及系统软件开发,乐于分享喜欢学习,喜欢专研Linux内核源代码。...写时复制技术(一下简称COW)是linux内核比较重要的一种机制,我们都知道:父进程fork子进程的时候,子进程会和父进程会以只读的方式共享所有私有的可写页,当有一方将要写的时候会发生COW缺页异常。...那么究竟COW在linux内核中是如何触发?又是如何处理的呢?我们将在本文中以源代码情景分析的方式来解读神秘的写时COW,从源代码级别的角度彻底理解它。...需要说明的是:本文中所分析的内核源码时linux-5.0版本内核,使用arm64处理器架构,当然此文章发布时linux内核已经是linux-5.8.x,当你查看最新的内核源码的时候会发现变化并不是很大。...下面我们在源代码中寻找答案: do_wp_page函数的2502到2541是我们分析重点: 2502 /* 2503 |* Take out anonymous

4.6K20

深入分析Linux内核源代码阅读笔记 第三章

外部中断(或硬件中断) 内部中断(或叫异常) 本章主要讨论在 Intel i386 保护模式下中断机制在 Linux 中的实现。...异常:既不使用中断控制器,又不能被屏蔽 故障(Fault) 陷阱(Trap) 中断 外部可屏蔽中断(INTR) 外部非屏蔽中断(NMI) Linux 对 256 个向量的分配如下: 从...中断请求队列的初始化: 让每个中断源都必须占用一条中断线是不现实的,在 Linux 设计中,专门为每个中断请求 IRQ 设置了一个队列,这就是我们所说的中断 请求队列。...对于每个 IRQ,Linux 都用一个 irq_desc_t 数据结构来描述,我们把它叫做 IRQ 描述符; 在系统初始化期间,init_ISA_irqs()函数对 IRQ 数据结构(或叫描述符)的域进行初始化...分两步进行有效性检查: “段”级检查 “门”级检查 检查是否发生了特权级的变化 Linux 对中断的处理: Linux 把一个中断要执行的操作分为下面的 3 类: 紧急的(Critical)

1.3K40

.net Framework 源代码 · ScrollViewer 使用原理其他源代码分析

本文是分析 .net Framework 源代码的系列,主要告诉大家微软做 ScrollViewer 的思路,分析很简单。...从微软源代码可以看到 ScrollViewer 继承 ContentControl,所以可以重写 OnMouseWheel ,请看他的代码 protected override void OnMouseWheel...从垃圾微软的源代码可以看到 HookupScrollingComponents 的逻辑,首先是判断属性CanContentScroll 判断元素里的控件是否可以滚动,如果元素里的控件可以滚动,那么再判断元素里的控件是不是继承...大概整个源代码只有这些,很多的代码都是在判断边界,还有处理一些用户输入。 在触摸的时候,核心的代码是 ManipulateScroll ,传入了当前的移动和累计的移动、是否水平移动。....net Framework 源代码 · ScrollViewer [.net源码分析 – List - 布鲁克石 - 博客园](http://www.cnblogs.com/brookshi/p/5353021

1.7K10

调试 ms 源代码

如果需要调试 WPF 源代码或框架源代码,那么需要使用 DotPeek。...然后还需要去掉微软的服务和本地缓存 然后写一个呆磨进行测试 现在就可以开始调试框架源代码了 只需要在一些函数使用断点,然后堆栈跳转,假如我在 MouseDown 写一个断点,在触发按下,点击堆栈,可以看到外部代码...这时候可以看到 dotPeek 在反编译,这个时间比较长,需要去做一些你喜欢做的事情,回来就可以发现 dotPeek 反编译好而且你看到 ms 源代码,这时候可以尝试源代码断点,但是不是所有地方都可以断点...那么接下来就是调试 ms 源代码了,因为已经进入了 Release 的反编译代码,所以通过堆栈调用就进入了源代码,在需要的地方使用断点,当然,不是所有地方可以使用断点。...但是微软源代码使用的框架可能和自己的不一样,看起来代码还是不相同。 最好是自己去下载微软源代码,然后把他放在一个仓库,这样可以看到不同的框架修改的代码。

1.5K10
领券