皮皮网
皮皮网

【php静态论坛源码】【准考证保存 源码】【易语言 统计源码】typeion论坛源码_论坛bbs源码

时间:2024-12-27 13:49:38 来源:webplusex源码

1.如何解决bus error
2.这个是坛源坛php静态论坛源码用什么加密的怎么解密谁能还原成源代码

typeion论坛源码_论坛bbs源码

如何解决bus error

       ä¸€ï¼ŒBus Error究竟是指什么

        Bus Error,即总线错误。

        引发原因:

        CPU处于性能方面的考虑,要求对数据进行访问时都必须是地址对齐的。如果发现进行的不是地址对齐的访问,就会发送SIGBUS信号给进程,使进程产生 core dump。RISC包括SPARC(一种微处理器架构)都是这种类型的芯片。x系列CPU都支持不对齐访问,也提供了开关禁用这个机制。x架构不要求对齐访问的时候,必定会有性能代价。例如,对int的访问应该是4字节对齐的,即地址应该是4的倍数,对short则是2字节对齐的,地址应该是2的倍数。

        Bus Error也有可能是因为机器物理问题或者访问无效物理地址,但这种情况非常少见。

        Linux平台上执行malloc(),如果没有足够的RAM,Linux不是让malloc()失败返回,而是向当前进程分发SIGBUS信号。

        注: 对该点执怀疑态度,有机会可自行测试确认当前系统反应。

        SIGBUS与SIGSEGV信号的一般区别如下:

        1) SIGBUS(Bus error)意味着指针所对应的地址是有效地址,但总线不能正常使用该指针。通常是未对齐的数据访问所致。

        2) SIGSEGV(Segment fault)意味着指针所对应的地址是无效地址,没有物理内存对应该地址。

       äºŒï¼Œä¾‹å­ç¨‹åºï¼š

        1 int main(){

        2

        3

        4

        5

        6 #if defined(__GNUC__)

        7 # if defined(__i__)

        8

        9 __asm__("pushf/norl $0x,(%esp)/npopf");

        # elif defined(__x___)

       

        __asm__("pushf/norl $0x,(%rsp)/npopf");

        # endif

        #endif

       

       

       

       

       

       

       

       

       

        short array[];

       

        int * p = (int *) &array[1];

        *p = 1;

       

        return 1;

        }

        short类型大小为2个字节,其地址必是2的倍数。而对于int指针来说,能够使用以访问数据的地址应该是4的倍数,转化arrary[1]的地址为int *并访问,系统会发出SIGBUS信号,导致程序崩溃。

       wiki上的例子:

       /img/houyipic//.swf" quality=high width= height= TYPE="application/x-shockwave-flash" PLUGINSPAGE="/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash" wmode="opaque"><a href="/baidu.php?fr=tc&e=a2lkPTM3NjAwMCZ1aWQ9MzkxOTg3JmJhaWR1aWQ9RDM5NTU5OTcxMkQ2MDYyMDRFNzFCMDNGOEVBRTI4OUYmcHJpY2U9MzAwJmNudGaWtub3cmcm9mPTImcz1hN2IyYzY5OWI1ZTZmM2JmJmMSZ3PSZ1cmw9aHR0cDovLzU5LjQyLjI1NSOC9nYWFjYWQvYmRfaWFkbXMuYXNwP2FkaWQ9azJwMnozajQxMyUyNmFkenQ9MzAlMjZ1cmw9aHR0cDovL3d3dyY2xraW5nLmNvbS9taW5pc2l0ZS9oNjEv" target="_blank" style="cursor:pointer"><div style="position:relative;filter:alpha(opacity=0);-moz-opacity:0;left:0;top:0; background:#CDEAF6;width:px;height:px;z-index:"></div></a></div></td></tr></table>

       </div>

更多内容请点击【时尚】专栏