首页
学习
活动
专区
工具
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.7K20
您找到你想要的搜索结果了吗?
是的
没有找到

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.9K62

Linux源代码包的安装

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

34510

Linux 应用程序开发入门

我会实现一个守护进程,从这个程序你将了解,Linux 应用程序开发基本流程 我们将实现一个远程shell的功能,可以通过tcp协议,运行远程机器上的命令或shell脚本 通过这个命令可以实现批量操作,管理上千台服务器...后台运行 --daemon 参数实现后台运行,原理是首先通过os.fork()克隆一个进程,然后退出当前进程,克隆的新进程继续运行 如果是Shell程序,你可使用“&”符号后台运行,但作为一个应用程序,...vsftpd.restart = /etc/init.d/vsftpd restart vsftpd.status = /etc/init.d/vsftpd status 4. init.d 脚本 Linux...init.d下面的脚本来管理 当人你也可以直接运行命令: nodekeeper --daemon --host localhost --port 7800 但这样只能算是一个半成品,也不够专业,我们写的是linux...运用程序,必须遵循Linux规范,所有要实现一个init.d脚本 $ cat nodekeeper #!

5.6K70

Linux源代码软件包

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

9910

开放源代码与.NET应用程序平台的性能测试

您的企业或组织采用哪一种应用程序平台架构?...尤其当厂商推陈出新各种应用程序平台的解决方案,IT人员在目不暇接之余,该如何从中选出最适合、最符合成本效益的架构,是IT人员关注的焦点。...,而且eWEEK实验室实测了数种应用程序平台的执行性能。...这个专题的重点在于这些应用程序平台的执行性能,文中除了论及.NET、LAMP(Linux、Apache、MySQL、PHP或Python或Perl)等平台,也以同样的方法实测了共八种平台的性能;下图来自...不论您的企业组织是自行部署应用程序平台、甚至有自己开发程序的能力,还是会将部署、开发(甚至管理)的工作外包给IT公司,如果能更了解各种应用程序平台解决方案的特性(包括“能”与“不能”),再综合评估厂商提供的每一种方案的成本及效益

861101

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系列 应用程序安装及管理(1)

前言 本章将会讲解Linux中的应用程序安装及管理,熟悉Linux中的软件封装类型,学会使用RPM包管理工具,学会从源码包编译安装程序。...一.Linux命令与应用程序的关系 1.命令和应用程序区别 在Linux操作系统中,一直以来命令和应用程序并没有特别明确的区别,从长期使用习惯可以通过以下描述来对两者进行区别。...:应用程序可能会用到图形界面, 形式多样:有些应用程序提供的执行文件,能够使用像Linux命令一样的运行格式,所以也经常被称为程序命令。...2.Linux应用程序的组成 安装完一个软件包以后,可能会向系统中复制大量的数据文件,并进行相关设置,在Linux操作系统中,典型的应用程序通常由以下几部分组成。...命令的详细用法将在下节详细讲解),具体操作如下: rpm-ql postfix ---- 3.软件包的封装类型 1>RPM软件包(REHL、Fedora、CentOS) 2>DEB软件包(Debian、Ubuntu) 3>源代码软件包

17920

Linux云计算——应用程序安装及管理

前言 本章主要内容,学会使用rpm 工具安装、查询及卸载软件包,通过源代码编译安装软件包。...一.安装及管理应用程序 1.应用程序与系统命令的关系 在Linux操作系统中,一直以来命令和应用程序并没有特别明确的区别。从长期使用习惯来看,可以通过以下描述来对两者进行区别。...、命令选项和命令参数 应用程序:通常没有固定的执行格式 ----  (2)典型应用程序的目录结构 安装完一个软件包以后,可能会向系统中复制大量的数据文件,并进行相关设置,在Linux操作系统中,典型的应用程序通常由以下几部分组成...(1)使用源代码安装软件的优点 获得最新的软件版本,及时修复bug 根据用户需要,灵活定制软件功能 (2)应用场合举例 安装较新版本的应用程序时 当前安装的程序无法满足需要时   需要为应用程序添加新的功能时...校验工具 在 Ubuntu 等 Linux 或 Unix 系统中,md5sum 是用来计算和校验文件的工具.

25830

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

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

4.6K20

CrossOver2022linux下载Windows应用程序

(2)应用分类列表启动CrossOver后,单击主界面【安装Windows应用程序】,单击左下角【查看应用程序列表】,便可在【选择应用】界面中呈现所有应用程序分类列表,根据分类选择应用,单击【继续】便可安装...(3)未列出的应用程序选中【未列出的应用程序】,单击【继续】进入【选择安装包】界面,然后导入exe格式安装包文件即可。2.选择容器【容器】是CrossOver承载Windows应用程序的必备“器皿”。...后续对Windows应用程序地设置、删除均要用到容器。在此,我们可以直接选择已存在的容器,也可以创建新容器。选择好容器后,单击【继续】便可安装应用程序了。...3.安装应用程序CrossOver安装应用程序时,需要下载部分运行Windows应用程序的配置文件。下载结束后,会启动Windows端的软件安装向导,根据安装向导安装即可。...CrossOver linux下载:https://wm.makeding.com/iclk/?

1.5K00

Mono 把 .NET 应用程序移植到 Linux

Mono 是基于 .NET 的开放源码开发平台,它让您可以使用各种 .NET 兼容语言创建强大、灵活的 Linux® 应用程序,同时利用跨平台的能力。...本文带领您在系统上安装 Mono,并开发第一个用 Mono 编译的可同时在 Linux 和 ® Windows® 上运行的 C# 应用程序。...本文引导您在系统上安装 Mono,并开发第一个用 Mono 编译的、可在 Microsoft Windows 和 linux 上运行的 C# 示例应用程序。...Mono 的优点 Mono 赋予了开放源码程序员使用各种 .NET 兼容语言为 Linux 构建应用程序同时保持跨平台性的强大编程能力和灵活性。...基于源代码的发行版如 Gentoo 也很容易获得,只需要很少的工作就能运行。 测试 Mono 安装 为了测试核心编译器(mcs)和运行时(mono),应该创建一个简单的程序并编译它。

3.9K80

OpenELA公开发布Red Hat Enterprise Linux源代码

Red Hat Enterprise Linux (RHEL) 的源代码不是已经公开了吗?我的意思是,Linux 是开源的典范。嗯,是也不是。...其目标是帮助创建“与 Red Hat Enterprise Linux (RHEL) 兼容的发行版,方法是提供开放和免费的企业级 Linux 源代码。”...现在,OpenELA 已将其流程自动化,因此新的企业级 Linux 源代码在每个新版本 RHEL 发布后几天内即可获得。最新版本——RHEL 9.4 和 RHEL 8.10 的源代码包现已提供。...OpenELA 在快速提供这些版本源代码方面的能力向开源社区表明,现在,有了 OpenELA,企业 Linux 源代码的访问权限可以可靠地获得。...虽然代码相同,但 Coekaerts 还表示,甲骨文的目标是确保兼容的用户空间应用程序二进制接口 (ABI) 和 API。“对于应用程序来说,要保持兼容,不需要完全匹配源代码。”

6210

Canonical通过Flutter启用Linux桌面应用程序支持

通过在Flutter中启用桌面Linux支持,Canonical使得应用程序开发人员可以非常轻松地通过Snap Store(Linux应用程序商店)为Linux用户发布他们的应用程序。...通过使Linux成为一流的Flutter平台,Canonical邀请应用程序开发人员将其应用程序发布给数百万Linux用户,并扩大可供他们使用的高质量应用程序的可用性。...-d linux 您将获得一个运行在Flutter上且运行于最新稳定版本GTK +上的闪亮的Linux应用程序。...这将使用需要在Linux桌面上构建和运行Flutter应用程序的Runner项目创建linux子目录。...Flutter Linux桌面案例 Flokk应用程序是针对Linux桌面的真实Flutter应用程序的绝佳示例。对于更简单的示例,您可以查看照片搜索应用程序,该应用程序还专门用于展示桌面功能。

2.6K20
领券