The C programming language is expressive and flexible, but not safe; as its expressive power and flexibility are obtained through unsafe language features, and improper use of these features can lead to program bugs w...The C programming language is expressive and flexible, but not safe; as its expressive power and flexibility are obtained through unsafe language features, and improper use of these features can lead to program bugs whose causes are hard to identify. Since C is widely used, and it is impractical to rewrite all existing C programs in safe languages, so ways must be found to make C programs safe. This paper deals with the unsafe features of C and presents a survey on existing solutions to make C pro- grams safe. We have studied binary-level instrumentation tools, source checkers, source-level instrumentation tools and safe dialects of C, and present a comparison of different solutions, summarized the strengths and weaknesses of different classes of solutions, and show measures that could possibly improve the accuracy or alleviate the overhead of existing solutions.展开更多
Recirculation is prohibited in many coal mining countries because of the fear that the re-use of return air would allow the build-up of air contaminants at the workings. The incorrect design and location of a booster ...Recirculation is prohibited in many coal mining countries because of the fear that the re-use of return air would allow the build-up of air contaminants at the workings. The incorrect design and location of a booster fan in any ventilation network can create unsafe condition due to recirculation. The current approach to investigating recirculation using simulation software requires manual effort which becomes tedious in a complex and a large network. An algorithm-based C++ program was designed to detect the recirculation in a booster fan ventilation networks. This program needed an input file prepared from output file generated by any ventilation simulator. This program created an output file for recirculation. This program demonstrated the strong capability to detect the recirculation in a sample network and a coal mine ventilation network. The outcomes of this program were documented in this paper.展开更多
基金Project (No. 2003AA1Z1060) supported by the National Hi-Tech Research and Development Program (863) of China
文摘The C programming language is expressive and flexible, but not safe; as its expressive power and flexibility are obtained through unsafe language features, and improper use of these features can lead to program bugs whose causes are hard to identify. Since C is widely used, and it is impractical to rewrite all existing C programs in safe languages, so ways must be found to make C programs safe. This paper deals with the unsafe features of C and presents a survey on existing solutions to make C pro- grams safe. We have studied binary-level instrumentation tools, source checkers, source-level instrumentation tools and safe dialects of C, and present a comparison of different solutions, summarized the strengths and weaknesses of different classes of solutions, and show measures that could possibly improve the accuracy or alleviate the overhead of existing solutions.
基金the National Institute for Occupational Safety and Health of USA for providing financial support for this project
文摘Recirculation is prohibited in many coal mining countries because of the fear that the re-use of return air would allow the build-up of air contaminants at the workings. The incorrect design and location of a booster fan in any ventilation network can create unsafe condition due to recirculation. The current approach to investigating recirculation using simulation software requires manual effort which becomes tedious in a complex and a large network. An algorithm-based C++ program was designed to detect the recirculation in a booster fan ventilation networks. This program needed an input file prepared from output file generated by any ventilation simulator. This program created an output file for recirculation. This program demonstrated the strong capability to detect the recirculation in a sample network and a coal mine ventilation network. The outcomes of this program were documented in this paper.