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

Linux64位程序移植

1 概述 Linux下的程序大多充当服务器的角色,在这种情况下,随着负载量和功能的增加,服务器所使用内存必然也随之增加,然而32位系统固有的4GB虚拟地址空间限制,在如今已是非常突出的问题了;另一个需要改进的地方是日期...依赖于这些关系的应用程序在64位平台上编译也会失败。...3 从32位系统移植到64位系统 3.1 基本原则 3.1.1 类型定义 不要使用C/C++中那些在64位系统上会改变大小的数据类型来编写应用程序,而是使用一些类型定义或宏来显式地说明变量中所包含的数据的大小和类型...这一步比较难,因为有些外部没有64位版本,这就有可能需要推动外部的64位化工作,或者将这部分功能挪到其它进程。...了解如何将应用程序移植到64位体系结构上可以帮助我们编写可移植性更好且效率更高的代码。

4.5K82

Linux移植移植步骤

在这里总结一下我在移植Linux2.6.22.6内核过程时的步骤。移植成功后最终能挂接做好的根文件系统,并且启动第一个init程序。...移植的步骤如下: 1、将网上下载的内核源码文件linux-2.6.22.6.tar.bz2放入/work/system路径下。...2、切换到/work/system,使用tar xjf linux-2.6.22.6.tar.bz2解压缩内核源码文件得到一个名为linux-2.6.22.6的文件夹 3、cd linux-2.6.22.6.../patch-ker.sh c /work/system/linux-2.6.22.6打补丁到内核所在目录     上述命令完成以下三件事情       1)、修改内核fs/Kconfig文件,增加source...17、发现内核可以启动位于root分区的根文件系统了,移植成功 发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/155542.html原文链接:https://javaforall.cn

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

    Linux移植一_linux从零开始移植

    Linux移植一 本文博客链接:http://blog.csdn.net/jdh99,作者:jdh,转载请注明....现在手上有两个开发板,一个是tiny6410,一个是OK6410-A.tiny6410上跑的是linux2.6.38,支持alsa,uboot支持yaffs2系统以及从sd卡启动linux,并且移植了qte...的.而ok6410上跑的是linux2.6.36,没有移植alsa,默认安装的系统为cramfs系统,yaffs2系统需要再安装.用户空间音频编程仅支持oss方式,可以跑qtopia,不过qte移植或至少不完整...移植到ok6410上.方案有两种: 1.用ok6410提供的uboot + linux2.6.38 2.用tiny6410提供的uboot + linux2.6.38 先尝试第一种. ok6410与tiny6410...发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/193322.html原文链接:https://javaforall.cn

    2K20

    Mono 把 .NET 应用程序移植Linux

    Mono 的优点 Mono 赋予了开放源码程序员使用各种 .NET 兼容语言为 Linux 构建应用程序同时保持跨平台性的强大编程能力和灵活性。...比如,Mono 提供了称为 Gtk# 的窗口技术、用于 gtk+ 的一套 C# 绑定和种类齐全的 GNOME 。这就使得应用程序开发人员能够使用 Mono 编写完全原生的 GNOME 应用程序。...Mono 已经成功移植到多种硬件平台上的 Linux、FreeBSD、Windows 和 Mac OS X。估计涵盖了桌面市场的 99%。...如果在 Linux 系统上编译这个类,控制台将显示正确的结果。 图 2. 使用非 C# Mono 的其他优点 Mono 的运行时还可以嵌入到应用程序中,从而简化打包和发送。...MonoDevelop 项目将 SharpDevelop 移植到 Gtk# 以便为 C# 和 Mono 建立最完善的 UNIX 系统开发环境。

    4K80

    Linux内核移植_rom内核移植

    这两天在友善的tiny210的实验板上移植linux内核,正好和大家分享,同时也算是做个记录吧!首先介绍一下开发环境吧,这个在做移植的时候还是挺重要的。...主机linux:Fedora9 安装在VMware虚拟机上; 开发板 :友善的tiny210,256M的FLASH; 移植linuxLINUX-3.3.5; 交叉编译环境:arm-linux-gcc...1.烧写启动文件 要移植操作系统,肯定是需要启动代码了,也就是u-boot了。我自己没有移植u-boot,是从网上现找的。好吧,我上传一下,也方便大家下载。...= /opt/FriendlyARM/toolschain/4.4.3/bin/arm-linux- 第一行的修改大家肯定是明白的嘛,因为咱们需要移植到arm上,所以是arm嘛。...简单的说一下,咱们在这里的移植是属于板级的移植,一般来说移植操作系统分为:体系结构级的移植、soc级的移植和板级的移植。板级的移植是最简单的,往往是在芯片制作厂商提供的样板的基础上做移植

    4.6K10

    busybox引导linux内核_linux移植教程

    2.5.1 向{rootfs}/lib目录下添加文件 2.5.2 向{rootfs}/usr/lib目录下添加文件 2.6 创建其他文件夹 三、测试文件系统(NFS挂载) 3.1 设置uboot...2.5 向根文件系统添加lib 2.5.1 向{rootfs}/lib目录下添加文件 从交叉编译工具链的安装目录中拷贝lib到rootfs的lib中。...lib目录下 备注1:“-d”表示拷贝符号链接,有个比较特殊的文件: ld-linux-armhf.so.3,此文件是个符号链接,相当于 Windows 下的快捷方式。.../libc/usr/lib/ cp *so* *.a /home/lsy/tools/lsy/nfs/rootfs/usr/lib/ -d 至此,文件添加完成,输入如下命令复查文件文件大小 #命令:...发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/185159.html原文链接:https://javaforall.cn

    5.4K30

    ​Arm机移植算法与程序

    Arm机移植算法与程序 0.导语 应项目需求,测试多路摄像头,需要测试程序移植到Arm机上,比如写的人脸识别算法,视频多拍等,那如何进行移植,如何操作呢,本篇文章进行详细阐述。...1.环境准备 本次移植为c/c++程序通过arm-linux-gnueabihf 在Ubuntu18上编译,连接usb线,接到Arm机板子上。 下面进行相应实验。...2.交叉编译器 交叉编译器安装如下: sudo apt install g++-arm-linux-gnueabihf 指定版本: sudo apt install g++-8-arm-linux-gnueabihf...2.2 编译程序 这里就不写什么C/C++程序了,直接编译程序,假设程序名字为main.cpp,编译命令如下: arm-linux-gnueabihf-g++-8 -static -o...然后运行 adb sehll 进入Linux后,进入data目录下,并运行刚才的程序: cd data chmod 777 main1 ./main1 这样移植程序,就成功了。

    1.6K20

    移植Python到arm linux系统

    复制可移植文件到arm文件系统 具体步骤: 1.将安装包复制到新建的文件目录下并解压 解压命令: tar –zxvf Python-3.6.2.tgz 2..../configure 3.编译python Pareser/pgen ,生成Python解释器: make 4.在Python-3.6.2目录下新建mylib文件夹,用于存放生成的可移植文件: 命令:mkdir...mylib 5.配置交叉编译: ·     CC为指定C交叉编译器,我的是arm-arago-linux-gnueabi-gcc ·     CXX为指定C++交叉编译器,我的是arm-arago-linux-gnueabi-g...++ ·     AR为ar工具,我的是arm-arago-linux-gnueabi-ar ·     RANLIB为ranlib工具,我的是arm-arago-linux-gnueabi-ranlib...=arm-arago-linux-gnueabi-gccCXX=arm-arago-linux-gnueabi-g++ AR=arm-arago-linux-gnueabi-arRANLIB=arm-arago-linux-gnueabi-ranlib

    16.6K10

    Linux 内核】编译 Linux 内核 ⑥ ( 安装 OpenSSL | 安装其它依赖 | 内核编译完成 )

    文章目录 一、安装 OpenSSL 二、安装其它依赖 三、Linux 内核编译完成 一、安装 OpenSSL ---- 参考 【错误记录】编译 Linux 内核报错 ( fatal error: openssl...Setting up libssl-doc (1.0.2g-1ubuntu4.20) ... root@ubuntu:~/kernel/linux-5.6.14# 二、安装其它依赖 ---- 编译...Linux 内核还需要安装如下软件包或依赖 : gcc libncurses5-dev build-essential kernel-package libssl-dev kernel-source...build-essential kernel-package libssl-dev kernel-source-** libc6-dev tk8.* fakeroot bin86 命令 , 安装上述 9 个依赖...; 三、Linux 内核编译完成 ---- 在 Linux 内核源码根目录中 , 执行 sudo make 命令 , 等待几小时后 , 在最后打印出如下内容 , 期间没有报错 , 即表示编译完成 ;

    22.4K40

    【Android Gradle 插件】Android 依赖管理 ① ( 依赖匹配 | 依赖查找顺序及路径 | Gradle 资源 )

    文章目录 一、依赖匹配 二、依赖查找顺序及路径 三、Gradle 资源 一、依赖匹配 ---- 依赖匹配 : 依赖由三部分组成 依赖分组 依赖名称 依赖版本号 只有三者都对上 , 依赖才能匹配上...依赖名称为 appcompat , 依赖版本号为 1.3.1 , 三者由冒号隔开 ; 二、依赖查找顺序及路径 ---- Android 依赖查找路径 : 首先 , 查找 本地的 Gradle...缓存依赖 , 如果找到则直接使用该依赖 , 进行 Gradle 构建 ; 本地依赖的缓存路径为 " C:\Users\用户名.gradle\caches\modules-2\files-2.1 "...Maven 私服地址 ; Gradle 构建时 , 定位依赖的过程 , 叫做 依赖解析 ; 首先 , 查找本地 ; 然后 , 查找远程 ; 依赖解析完毕后 , 如果是在远程中下载的依赖 ,...则将其 缓存到本地中 , 之后再次构建时 , 就不需要从远程中下载该依赖了 ; 定位依赖时 , 根据 依赖分组 , 依赖名称 , 依赖版本号 , 在 Gradle 资源中定位依赖 ;

    1.2K10

    小心“移植税”:Kubernetes不能使应用程序具有可移植

    Gartner 分析师 Marco Meinardi、Richard Watson 和 Alan Waite 表示,不能主要为了应用程序的可移植性而采用 Kubernetes,因为虽然 K8s 从理论上提高了可移植性...该文件也指出,采用 Kubernetes 几乎肯定意味着要采用第三方的存储和网络组件,这也意味着移植应用程序必须同时复制这些额外的组件,因此这也使应用程序更加依赖于特定平台。...但总体而言,该文件表明你别无选择,只能“依赖于特定平台,尽可能减轻这种依赖并接受它。” 而且,应该是在三位分析师评估的应用移植概率“极低”的情况下做这个选择。...“由于可移植性的挑战,大多数应用程序不会在云服务提供商之间迁移,但是大多数应用程序也不需要这种可移植性。“数据引力”使应用程序往往更靠近数据的存储位置。迁移数据通常是困难且昂贵的。...出于类似的原因,为了利用最便宜的基础设施而频繁移动应用程序的情况尚未出现。” 因此,该建议表明 为移植性而建立应用可能会引入“移植税”。

    61320

    Linux移植的一般过程

    大家好,又见面了,我是全栈君 前一阵子在公司移植Linux2.6到一块ARM11的开发板上,下面粗略讲讲移植Linux的一般过程。 一开始的UBOOT的移植不多说了。...http://hovertree.com/menu/linux/ 此外,linux也有两种方式的引导,一种是zImage,另一种是Image。...个人意见,一开始移植的时候用Image会更加简便,虽然tftp下载的时候稍微多耗一点时间,但由于减少了中间的解压缩步骤,能减少出错的机会,加快开发进度。...网卡启动之后在命令行参数中设置nfs方式的根文件系统,并把文件系统放在一台linux的服务器上面通过NFS导出。这样,就基本上移植成功了一个最简单的linux系统。...发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/120368.html原文链接:https://javaforall.cn

    2.6K10

    宋宝华:一个简单的python脚本画出Linux程序依赖

    点击蓝字 关注我们 继《宋宝华:一个简单的python脚本看透Linux程序依赖》之后,作为一个python的初级用户,学习和实践python的步伐根本就不下来!.../libdep-pic.py /usr/lib/firefox/firefox 它会得到一个如下的效果图,把组件依赖描绘地一目了然: ? 为什么需要这种依赖图? 1....我们想分析某个软件有没有依赖GPL而非LGPL的,如果我们想确保应用程序不GPL的话。 原理1:我们使用了Linux里面的dot绘图工具(没有的童鞋请apt install安装)。...上图中,a依赖于b,b依赖于c和d。 原理2:ldd工具,可以列出来elf文件所依赖的.so,以及.so依赖的.so 譬如: ?...firefox依赖于libm.so.6等,如果我们对libm.so.6继续ldd,就可以分析出更深层次的依赖。所以,整个依赖依赖于递归。 ? 源代码 上述理论的基础上,完整源代码高亮后如下: ?

    1.4K30
    领券