Forums

乐橙云app对齐问题(GCC)

开始于 "ICLI, Bekir (EXT)" 2008年4月8日
福利托斯写
>我正在使用编译器(不记得该芯片 and manufacturer)
>类型之后需要任何特殊的类型转换。像这样
>静态int __packed a;
>
>我知道这真的很不寻常,但我仍然认为唯一的便携式产品
>解决方案是手动执行操作(使用宏)。

不,唯一真正可移植的解决方案是不使用任何包装
属性。 ;)

我从来没有遇到过没有更好的解决方案的情况
(特别是在便携性方面)要比打包使用。当然
情人眼中的美好。

打包从来都不是必需的(1),我认为它永远不是可取的。

罗伯特

1-除非您必须处理以这种方式构建的二进制库,
在微控制器上应该是很少见的情况。

--------------------------------
基于Microsoft Exchange技术的mail2web LIVE免费电子邮件-
http://link.mail2web.com/LIVE

好吧,维护与二进制数据库或文件系统的兼容性可能会 举一个例子。当然,在新代码中,设计更具意义 乐橙云app,使其与自然边界保持一致。

我最近遇到了IAR缺少内联包装指令的情况。它提供了一个 packing 可以正常工作的杂注,但是我发现没有办法实现 a macro 等同于gcc可能的每个变量包装。便携非常重要 code!

克里斯

- - - 原始信息 - - -
来自:s ... @ aeolusdevelopment.com
To: a...
发送:2008年4月9日,星期三,10:27 AM
主题:回复:[AT91SAM]回复:乐橙云app对齐问题(GCC)
Foltos Wrote
>我正在使用编译器(不记得芯片和制造商)
>类型之后需要任何特殊的类型转换。像这样
>静态int __packed a;
>
>我知道这真的很不寻常,但我仍然认为唯一的便携式产品
>解决方案是手动执行操作(使用宏)。

不,唯一真正可移植的解决方案是不使用任何包装
attribute. ;)

我从来没有遇到过没有更好的解决方案的情况
(特别是在便携性方面)要比打包使用。当然
情人眼中的美好。

打包从来都不是必需的(1),我认为它永远不是可取的。

Robert

1-除非您必须处理以这种方式构建的二进制库,
在微控制器上应该是很少见的情况。

----------------------
mail2web LIVE-基于Microsoft Exchange技术的免费电子邮件-
http://link.mail2web.com/LIVE

------
在此传入消息中未发现病毒。
Checked by AVG.
版本:7.5.519 /病毒数据库:269.22.10 / 1367-发布日期:4/9/2008 7:10 AM
s ... @ aeolusdevelopment.com写道:

>我从来没有遇到过那种情况 不是更好的解决方案
>(特别是在便携性方面)要比打包使用。当然
>情人眼中的美好。

我可能一次遇到一个例外(确实是一个陷阱)。我们
有一个应用程序碰巧将所有乐橙云app打包在16位上
微。对于代码中未对齐的访问没有真正的惩罚
但是由于额外的获取周期,它们的速度有些慢。

可以预见的是,微元件或某些支撑组件已经停产
并且我们升级到了Blackfin,所有访问都对齐了。的
当然,我们必须能够在新旧数据之间移动数据
产品。

哦,两个Micro上必须使用相同的代码库,所以我
有点了解使相同的代码适用于不同的代码
编译器:-)

我们最终经历了各种各样的篮球比赛,以建立统一
乐橙云app,以便在我们弄清楚之前可以交换数据
问题更普遍-下一个mircro可能
有一点点字节序,我们在这里是大字节序。

长话短说,我们最终得到了一些数据描述字符串
对于必须通过电线运输的每个乐橙云app,
处理本机乐橙云app访问之间的接口的例程
和包装线协议。

我确实将压缩属性用于在
SAM7,我不确定是否要以其他方式进行...

干杯,拉尔夫
克里斯·德利兹(Chris DeLise Wrote)
>好吧,保持与二进制文件的兼容性 数据库或文件系统,
可能是一个>example.

我只是乍一看脸红。

>当然,在新代码中,它对 design structures so
他们与>natural boundaries.

我认为这根本上是不可能的。它假设您
当前的包装限制是您唯一或最严格的限制
遇到。这就是让我们使用打包处理二进制文件的原因
首先:)假设二进制文件实际上是最好的方法
然后使用最便携式的方法来进行破解和打包
用于将字节流分解为乐橙云app或将乐橙云app打包为
一个字节流。这不仅涉及对齐,而且
文件移植性的其他主要缺陷。它也处理
一些偶尔出现的奇怪尺寸。

这样的破解代码所占用的空间不会比编译器所占用的空间更多
无论如何都必须生成,因此没有节省空间的方法,并且
生成的乐橙云app自然对齐,从而更快,更小
对齐受限的微米代码。它的优点是几乎
真正的便携式。没有关键字欺骗。我认为潜伏着的唯一真正的野兽
树林里有一个字符可能是> 8 bits.

>我最近遇到了IAR缺少内联包装的情况 directive. It
提供包装>可以正常工作的杂注,但是我找不到办法 implement
等同于>gcc可以进行每个变量的包装。非常
用于便携式代码!

靠杂物活着,用杂物死:)杂物只是提供一种便携式
不可携带的方式:)

罗伯特
--------------------------------
mail2web.com-领先提供商的Microsoft Exchange解决方案-
http://link.mail2web.com/Business/Exchange

拉尔夫·汉佩尔写
>s ... @ aeolusdevelopment.com写道:
>
>>我从来没有遇到过没有更好的解决方案的情况
>>(特别是在便携性方面)要比打包使用。当然
>>情人眼中的美好。
>
>我可能一次遇到一个例外(确实是一个陷阱)。我们
>有一个应用程序碰巧将所有乐橙云app打包在16位上
>微。对于代码中未对齐的访问没有真正的惩罚
>但是由于额外的获取周期,它们的速度有些慢。

一个非常诱人的陷阱。

>可以预见的是,微或一些支撑组件 were EOLed
>并且我们升级到了Blackfin,所有访问都对齐了。的
>当然,我们必须能够在新旧数据之间移动数据
>products.
>
>哦,两个Micro上必须使用相同的代码库,所以我
>有点了解使相同的代码适用于不同的代码
>compilers :-)
>
>我们最终经历了各种各样的篮球比赛,以建立统一
>乐橙云app,以便在我们弄清楚之前可以交换数据
>问题更普遍-下一个mircro可能
>有一点点字节序,我们在这里是大字节序。

这就是打包和破解功能/宏的用途。一个好的编译器
可以使传输简单地复制到原始微型计算机上。

如果您跨网络工作,则除了小,大和中端顺序外,
像CAN,您可能需要处理5和18位整数之类的问题。和
当然,对于某些DSP,自然整数约为24位。

>长话短说,我们最终得到了一些数据 description string
>对于必须通过电线运输的每个乐橙云app,
>处理本机乐橙云app访问之间的接口的例程
>和包装线协议。

复制(或预期)XDR;)

>而且我确实在我的CDC代码中使用了packed属性, runs on the
>SAM7,我不确定是否要以其他方式进行...

为什么?只有在接口上它才是显而易见的,并且代码
如果不对齐,内部将更快更紧密。你会
如果乐橙云app有点混乱,可以节省一点空间,仅此而已
我认为(1)。

罗伯特

1-纠正现场订单的绝好机会,我敢保证就这样
您需要另一个机会;)
--------------------------------
mail2web.com针对基于Microsoft的移动个人的增强型电子邮件
交换 - http://link.mail2web.com/Personal/EnhancedEmail

s ... @ aeolusdevelopment.com写道:

>>长话短说,我们最终得到了一些数据 description string
>>对于必须通过电线运输的每个乐橙云app,
>>处理本机乐橙云app访问之间的接口的例程
>>和包装线协议。
>
>复制(或预期)XDR;)

是的,我确实在此方面参考了原始的Sun论文:-)

您不会相信(也许您会)我必须走的篮球
通过说服管理层这是正确的事情
去做。

拉尔夫

拉尔夫·汉佩尔写

s ... @ aeolusdevelopment.com写道:

>复制(或预期)XDR;)
>
>是的,我确实在此方面参考了原始的Sun论文:-)
>
>您不会相信(也许您会)我必须走的篮球
>通过说服管理层这是正确的事情
>to do.

我几乎可以听到“但是...您不能只是快速补丁...”

罗伯特

--------------------------------
mail2web.com点播业务解决方案可以为您做什么?
http://link.mail2web.com/Business/SharePoint

我最近遇到一种情况,当时我试图从 在几小时内将gcc转换为IAR,包括FAT32文件系统和各种驱动程序 MX21大量使用_packed语法的乐橙云app 在可用的时间内不可能做。回想起来,这有点有趣 认为所有这些内置在gcc中的开源代码完全是 non-portable.

我同意罗伯特的看法,像NTOHS和NTOHL这样的访问宏将 孩子们玩这个问题,比_packed轻便得多。网络 人们理解这一点,但是有很多旧代码没有使用这些 技术。我认为部分问题是ARM体系乐橙云app没有 以CISC机器减少的方式优雅地处理未对齐的数据 表现。对齐错误比强制错误要容易得多 编译器标记未对齐。我想知道是否有人创建了访问器 宏可以帮助您。

克里斯

- - - 原始信息 - - -
来自:s ... @ aeolusdevelopment.com
To: A...
发送:2008年4月9日,星期三,11:28 AM
主题:回复:[AT91SAM]回复:乐橙云app对齐问题(GCC)
Chris DeLise Wrote
>好吧,保持与二进制数据库或文件系统的兼容性,
might be one >example.

我只是乍一看脸红。

>当然,在新代码中,设计乐橙云app更有意义。
they align with >natural boundaries.

我认为这根本上是不可能的。它假设您
当前的包装限制是您唯一或最严格的限制
遇到。这就是让我们使用打包处理二进制文件的原因
首先:)假设二进制文件实际上是最好的方法
然后使用最便携式的方法来进行破解和打包
用于将字节流分解为乐橙云app或将乐橙云app打包为
一个字节流。这不仅涉及对齐,而且
文件移植性的其他主要缺陷。它也处理
一些偶尔出现的奇怪尺寸。

这样的破解代码所占用的空间不会比编译器所占用的空间更多
无论如何都必须生成,因此没有节省空间的方法,并且
生成的乐橙云app自然对齐,从而更快,更小
对齐受限的微米代码。它的优点是几乎
真正的便携式。没有关键字欺骗。我认为潜伏着的唯一真正的野兽
树林里有一个字符可能是> 8 bits.

>我最近遇到了IAR缺少内联包装指令的情况。它
offers a packing >可以正常工作的杂注,但是我发现没有办法实现
等同于>gcc可以进行每个变量的包装。非常
for portable code!

靠杂物活着,用杂物死:)杂物只是提供一种便携式
不可携带的方式:)

Robert

----------------------
mail2web.com-领先提供商的Microsoft Exchange解决方案-
http://link.mail2web.com/Business/Exchange

------
在此传入消息中未发现病毒。
Checked by AVG.
版本:7.5.519 /病毒数据库:269.22.10 / 1367-发布日期:4/9/2008 7:10 AM
是的,我每天都听到。我记得一个顾问的老见,你可以 快速,便宜或正确。选择两个。似乎没有足够的时间来 do it "right".

- - - 原始信息 - - -
来自:s ... @ aeolusdevelopment.com
To: a...
发送:2008年4月9日,星期三,12:12 PM
主题:回复:[AT91SAM]回复:乐橙云app对齐问题(GCC)
Ralph Hempel Wrote

s ... @ aeolusdevelopment.com写道:

>复制(或预期)XDR;)
>
>是的,我确实在此方面参考了原始的Sun论文:-)
>
>您不会相信(也许您会)我必须走的篮球
>通过说服管理层这是正确的事情
>to do.

我几乎可以听到“但是...您不能只是快速补丁...”

Robert

----------------------
mail2web.com-点播业务解决方案可以为您做什么?
http://link.mail2web.com/Business/SharePoint

------
在此传入消息中未发现病毒。
Checked by AVG.
版本:7.5.519 /病毒数据库:269.22.10 / 1367-发布日期:4/9/2008 7:10 AM
嗨,大家好,

我完全同意Robert关于破解和打包功能的观点。

最坏的情况是,您需要重写两个特定的函数
到您的目标平台;一种用于开裂,一种用于包装。

处理数据的其余代码是相同的。

哦,关于管理和“快速补丁”的另一个主题

就管理层通常而言,“重写”应为四个字母
单词。

使用虚拟胶带时,没有必要构建正确的零件。
;)

戴夫

发件人:A ... [mailto:A ...]代表
s ... @ aeolusdevelopment.com
发送:2008年4月9日,星期三,11:12 AM
致...
主题:回复:[AT91SAM]回复:乐橙云app对齐问题(GCC)

拉尔夫·汉佩尔写

s ... @ aeolusdevelopment.com
wrote:

>复制(或预期)XDR;)
>
>是的,我确实在此方面参考了原始的Sun论文:-)
>
>您不会相信(也许您会)我必须走的篮球
>通过说服管理层这是正确的事情
>to do.

我几乎可以听到“但是...您不能只是快速补丁...”

罗伯特

----------------------
mail2web.com-点播业务解决方案可以为您做什么?
http://link.mail2web.com/Business/SharePoint