程式崩溃是什么原因造成?

程式崩溃是什么原因造成?,第1张

程式崩溃,是在办公室工作的人经常遇到的,那么程式崩溃原因是什么呢?下面是我精心为你整理的程式崩溃的原因,一起来看看。

程式崩溃的原因

1. 不确定的变数:程式使用了随机的数字或变数元件,在程式执行时没有被很好的确定范围。如:使用者输入,随机数,或时间。

2.记忆体泄漏:程式每次执行时都记忆体溢位。每次执行程式崩溃的罪魁祸首是随机的,因为它依赖于在特定时间执行的程序数。

包括堆溢位或者是栈异常。

程式依赖于其它外部应用也可能导致崩溃。如果我们的应用依赖于一个系统某些系统属性,他们被另一个程式修改,那么这个干扰可能会导致系统崩溃。与硬体互动的程式更容易出现这些错误。

程式崩溃怎么办

启动修复绰绰有余

Win7的系统修复功能是很智慧的,很多时候根本不用使用者太多的干预。例如由于非法关机而引起的小问题,当再次启动系统时就会进入“Windows错误恢复”介面,游标预设停留在“正常启动Windows”选项上并开始倒计时。很显然,系统本身已经允许你正常启动,而问题已经自己修复了。

此外,由于 *** 作不规范或者硬体的改动而造成的系统档案被破坏或者配置档案不正确,都有可能导致系统无法正常启动。此时系统再次启动,同样会出现“Windows错误恢复”对话窗。提示视窗中有两项内容可选,预设会停在“启动启动修复***推荐***”项。显然,Win7是希望使用者选择“启动修复”选项对系统进行修复。

经过测试,如果选择“正常启动Windows”,系统一样可以正常启动。不过这样可能会产生一些不可预知的问题,所以为了系统的稳定,建议大家还是多花一点时间,启用系统的修复功能。

启动系统的“启动修复”功能后,系统将自动进行修复而不需要你 *** 作,修复完成后如果提示“请重新启动计算机,以完成修复”,那么重启后就可以恢复正常了。如果提示“系统修复无法自动修复此计算机”,那就要使用更高阶的工具来进行修复了。

​​系统还原出手相救

如果“启动修复”功能也无法解决问题,系统还是不能正常启动,那就需要“系统还原”出手相救了!

要启用Win7的系统还原功能,需要在系统启动时按F8键,在出现的系统选择选单当中选择“修复计算机”,回车确认后按照提示即可进入到“系统恢复选项”介面。

在“系统恢复选项”视窗中我们可以看到“启动修复”、“系统还原”、“系统映像恢复”、“Windows记忆体诊断”和“命令提示符”五个选项,直接选择“系统还原”,然后按照提示选择一个还原点,很快就可以完成还原 *** 作。完成后重新启动,一般情况下都可以修复系统无法启动等问题。

提示:要使用“系统还原”功能有两个前提条件:一是系统分割槽已经开启系统保护功能二是已经建立了系统还原点***手动或自动***。

大意:你得到一个应用的源码,该应用每次启动都会出现程序崩溃。再你调试了10次后发现,在一个相同的条件下,该程序从不崩溃。

The question largely depends on the type of application being diagnosed. However, we can

give some general causes of random crashes.1.

Random variable: The application uses some random number or variable component

which may not be fixed for every execution of the program. Examples include: user

input, a random number generated by the program, or the time of day.2.

Memory Leak: The program may have run out of memory. Other culprits are totally

random for each run since it depends on the number of processes running at that

particular time. This also includes heap overflow or corruption of data on the stack.

It is also possible that the program depends on another application / external module that

could lead to the crash. If our application, for example, depends on some system attributes

and they are modified by another program, then this interference may lead to a crash. Pro-

grams which interact with hardware are more prone to these errors.

In an interview, we should ask about which kind of application is being run. This information

may give you some idea about the kind of error the interviewer is looking for. For example,

a web server is more prone to memory leakage, whereas a program that runs close to the

system level is more prone to crashes due to system dependencies.

答案:该问题很大程度上取决于对该应用的诊断。但我们可以总结一下一些随机常见的崩溃原因:

1. 不确定的变量:程序使用了随机的数字或变量组件,在程序执行时没有被很好的确定范围。如:用户输入,随机数,或时间。

2.内存泄漏:程序每次执行时都内存溢出。每次运行程序崩溃的罪魁祸首是随机的,因为它依赖于在特定时间运行的进程数。

包括堆溢出或者是栈异常。

程序依赖于其它外部应用也可能导致崩溃。如果我们的应用依赖于一个系统某些系统属性,他们被另一个程序修改,那么这个干扰可能会导致系统崩溃。与硬件交互的程序更容易出现这些错误。

一般情况是指程序丢失文件,无法正常运行,比如你装个程序,结果系统崩溃了,重做系统之后,这个程序就无法运行了,因为这个程序在前一个系统中写如了注册表,系统重做之后,注册表是空的,就无法使用了。还有就是说丢失了什么DLL文件之类的,这些一般没什么影响,把应用程序重新装一下就可以了。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11328956.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-15
下一篇 2023-05-15

发表评论

登录后才能评论

评论列表(0条)

保存