Software
Morteza Noferesti; Farzad Amiri Delouei; Sarah Aryan
Abstract
Background and Objectives: Modern operating systems struggle to manage threads with dynamic resource demands, as traditional schedulers rely on reactive heuristics that often misclassify thread behavior. This paper introduces a proactive thread classification methodology that predicts resource-bound ...
Read More
Background and Objectives: Modern operating systems struggle to manage threads with dynamic resource demands, as traditional schedulers rely on reactive heuristics that often misclassify thread behavior. This paper introduces a proactive thread classification methodology that predicts resource-bound categories by analyzing kernel event streams in real time. Methods: Our proposed five-step pipeline includes: (1) kernel event collection using LTTng, (2) system call categorization into a seven-category taxonomy covering 57 system calls, (3) PID/TID labeling based on resource usage, (4) feature extraction from the first five events, and (5) predictive modeling with multiple machine learning classifiers. Results: Our evaluation of six machine learning models, including Random Forest, LightGBM, Stacked Ensemble, MLP, CNN-BiLSTM, and BERT demonstrates that Random Forest delivers the optimal balance of high predictive performance (93.4% precision, 92.5% recall) and low inference latency (178 µs), outperforming both other ensemble methods and computationally expensive deep learning architectures. When applied to a real-world dataset [30], this optimized methodology achieves 89% precision in thread classification, which directly translates to significant system-level improvements: a 41% reduction in tail latency for interactive applications and sustained 93% CPU utilization for cpu-bound tasks.Conclusion: This paper demonstrates the efficacy of a novel, proactive thread classification methodology that accurately predicts a thread's future resource-bound category within a critically short 100 µs window from its execution start. By instrumenting a five-step pipeline, the approach successfully translates fine-grained system call sequences into predictive signatures for resource constraints, such as identifying I/O-bound threads from read/write patterns. This early detection capability provides a timely and actionable foundation for operating system schedulers to preemptively optimize thread prioritization and resource allocation, thereby enhancing overall system performance and responsiveness.
Software
Seyyed AmirHossein Eshghazadi; Einollah Pira; Mohammad Khodizadeh-Nahari; Alireza Rouhi
Abstract
Background and Objectives: Software testing plays a vital role in software development, aimed at verifying the reliability and stability of software systems. The generation of an effective test suite is key to this process, as it directly impacts the detection of defects and vulnerabilities. However, ...
Read More
Background and Objectives: Software testing plays a vital role in software development, aimed at verifying the reliability and stability of software systems. The generation of an effective test suite is key to this process, as it directly impacts the detection of defects and vulnerabilities. However, for software systems with numerous input parameters, the combinatorial explosion problem hinders the creation of comprehensive test suites. This research introduces a novel approach using the β-Hill Climbing optimizer, an advanced variant of the traditional hill climbing algorithm, to efficiently generate optimal test suites.Methods: The β-Hill Climbing optimizer introduces a dynamic parameter, β, which facilitates a precise balance between exploration and exploitation throughout the search process. To evaluate the performance of this proposed strategy (referred to as BHC), it is compared with TConfig as a mathematical approach, PICT and IPOG as greedy algorithms, and GS, GALP, DPSO, WOA, BAPSO, and GSTG as meta-heuristic methods. These strategies are tested across a variety of configurations to assess their relative efficiency.Results: The reported results confirm that BHC outperforms the others in terms of the size of generated test suites and convergence speed. The statistical analysis of the experimental results on several different configurations shows that BHC outperforms TConfig as a mathematical strategy, PICT and IPOG as greedy strategies, GS, GALP, DPSO, WOA, BAPSO, and GSTG as meta-heuristics by 83%, 88%, 87%, 61%, 61%, 46%, 61%, 62%, and 70%, respectively.Conclusion: The BHC strategy presents a novel and effective approach to optimization, inspired by β-Hill Climbing optimizer for the generation of optimal test suite. Its superior performance in the generation of test suites with smaller size and higher convergence speed compared to other strategies.
Software
M.S. Mohagheghi
Abstract
Background and Objectives: Numerical iterative methods are widely used to compute reachability probabilities and expected rewards in probabilistic model checking of Markov decision processes. Several approaches have been proposed to improve the performance of these iterative methods. Reducing the total ...
Read More
Background and Objectives: Numerical iterative methods are widely used to compute reachability probabilities and expected rewards in probabilistic model checking of Markov decision processes. Several approaches have been proposed to improve the performance of these iterative methods. Reducing the total number of iterations is an important goal that is followed by several techniques in this paper.Methods: In this paper, we consider MDPs with different levels of non-determinism. We show that modified policy iteration performs better than the other standard iterative methods when the degree of non-determinism increases. We propose some novel methods to improve the performance of the modified policy iteration method. Our approach is to define several criteria to avoid useless iterations and updates of the modified policy iteration method. The first criterion considers the graphical structure of the model to define the number of iterations after each policy modification. The second criterion is a dynamic one to determine when a policy should be updated. The third proposed approach in this work is to use several priority heaps to select states for value updates.Results: Our proposed methods are implemented in the PRISM model checker and applied on several standard case studies. The results of experiments show that the running times of our approaches are less than the running time of the standard and previous methods for most case studies. The main reason for these results is that the total numbers of iterations and updates are reduced by our approaches, which results in an improvement in the performance of the method. While the running times are reduced by our approaches, the precision of computations are kept in most cases.Conclusion: The proposed techniques are able to reduce the number of iterations and accelerate the convergence to the optimal policies. The also prioritize the commutations to reduce the total number of updates.
Software
A. Nourollah; N. Behzadpour
Abstract
Background and Objectives: This paper presents a new optimization problem in the field of linkage reconfiguration. This is the problem of minimizing moving parts of a given robot arm for positioning the end effector of the given robot arm at the given target point as well as minimizing the movement of ...
Read More
Background and Objectives: This paper presents a new optimization problem in the field of linkage reconfiguration. This is the problem of minimizing moving parts of a given robot arm for positioning the end effector of the given robot arm at the given target point as well as minimizing the movement of the movable parts. Methods: Initially, formal modeling is accomplished by minimizing the movement problem. At this time, a criterion called AM (Arithmetic Measure) is introduced, and this criterion is used to quantify the motion of the linkage. Afterward, it is indicated that the presented problem is an NP-Hard problem. Consequently, a greedy heuristic algorithm is presented to minimize the movement of the robot's moving components. After identifying the moving components and the movement of these parts, an algorithm is provided to determine the final configuration of the robot arm. Results: The results indicate that the discussed model successfully reduced the moving parts of the robot arm. Moreover, the results show that the proposed approach fulfills the goal of minimization of the linkage components. Furthermore, this method leads to erosion of arm, reduces energy consumption and the required parameters and variables for calculating the final configuration of the linkages. Conclusion: The mentioned algorithm solves the problem by mapping the robot arm with an arbitrary number of links to a robot with a single link or two links. The proposed heuristic approach requires O(n2) time using O(n) space.======================================================================================================Copyrights©2018 The author(s). This is an open access article distributed under the terms of the Creative Commons Attribution (CC BY 4.0), which permits unrestricted use, distribution, and reproduction in any medium, as long as the original authors and source are cited. No permission is required from the authors or the publishers.======================================================================================================
Software
A. Saberi nejad; R. Tavoli
Abstract
Background and Objectives: Nowadays, data mining is one of the most significant issues. One field of data mining is a mixture of computer science and statistics which is considerably limited due to increase in digital data and growth of computational power of computers. One of the domains of data mining ...
Read More
Background and Objectives: Nowadays, data mining is one of the most significant issues. One field of data mining is a mixture of computer science and statistics which is considerably limited due to increase in digital data and growth of computational power of computers. One of the domains of data mining is the software cost estimation category. Methods: In this article, classifying techniques of learning algorithm of machine and COCOMO model as the most common estimation model of software costs are presented. Then, the analysis method of principal component approach is presented. Results: This article presents a suitable method to improve the performance of the software cost estimation. Moreover, the basic data set is decreased and is turned into a new collection by using this method. Among the features, the best are extracted. The algorithms of several classifications are assessed by applying this method. Finally, the evidence for accuracy of our claims in terms of increase in estimation accuracy of software costs is presented. Conclusion:. The results proved that the suggested method could have significant influence on models of decision tree, naïve Bayes and nearest neighborhood by decreasing dimension of input data and turning it into data. ======================================================================================================Copyrights©2018 The author(s). This is an open access article distributed under the terms of the Creative Commons Attribution (CC BY 4.0), which permits unrestricted use, distribution, and reproduction in any medium, as long as the original authors and source are cited. No permission is required from the authors or the publishers.======================================================================================================
Software
M. Sadeghzadeh Hemayati; H. Rashidi
Abstract
Background and Objectives: One of the major challenges in software engineering is how to respond to the desolate state of high-quality software development in a timely and cost-effective manner. Many studies have been conducted in an attempt to formalize the quality of software. However, according to ...
Read More
Background and Objectives: One of the major challenges in software engineering is how to respond to the desolate state of high-quality software development in a timely and cost-effective manner. Many studies have been conducted in an attempt to formalize the quality of software. However, according to the recent researches, the lack of comprehensive quality model is rooted in neglecting all quality aspects. Methods: In this study, we review nineteen quality models and classify them from three different perspectives, including structural, behavioral, and basic and derived aspects. The main aim is to specify and extract the more comprehensive set of quality factors to evaluate software quality. Results: This paper compares the different quality models and analyzes the factors to draw the necessary aspects in comprehensive quality models. Since the software quality involves several engineering tasks and several players who deal with quality concepts during software life cycle according to their various roles, in various phases and different artifacts, comprehensive quality models must consider many factors. Conclusion: These factors are in different aspects such as the measurement time in different development phases, product as well as process-related quality factors, a set of quality metrics measureable on the different type of artifacts such as document, model and source code, and finally a specific mechanism to apply dynamic weights to quality factors to determine their impacts on final quality of a product based on its application domain. ======================================================================================================Copyrights©2018 The author(s). This is an open access article distributed under the terms of the Creative Commons Attribution (CC BY 4.0), which permits unrestricted use, distribution, and reproduction in any medium, as long as the original authors and source are cited. No permission is required from the authors or the publishers.======================================================================================================