Found 510 Articles for Algorithms

Banker's Algorithm in Operating System

Manish Kumar Saini
Updated on 21-Apr-2023 10:54:54

11K+ Views

In computer systems, the Banker’s algorithm is utilized to avoid deadlock so that resources can be safely allocated to each process. This algorithm is named so because it can be used in a banking system to ensure that the bank never allocates its available cash such that it can no longer satisfy the requirements of all of its customers. In this article, we will discuss the banker’s algorithm in detail. But before that let us understand a real-world situation analogous to it. Banker's Algorithm: How Does It Work? Let us consider a bank has "n" number of accounts and "M" ... Read More

Binary Space Partitioning

Tapas Kumar Ghosh
Updated on 20-Apr-2023 12:28:26

4K+ Views

A binary space partition is a data structure used in computer graphics and algorithmic geometry to divide a space into smaller parts. BSP was developed in the environment of 3D computer graphics. BSP includes applications such as operation with geometrical shapes, geospatial, and ray tracing. It is a two-step procedure Step 1 − Creation of BSP tree. Step 2 − Display a tree. Creation of BSP tree Visual Representation of Binary Space Partitioning The binary Space Partitioning algorithm recursively divides the space into two half-spaces. So keep in account that there is a dividing region in every polygon figure. ... Read More

Naive Bayes algorithm: Prior, likelihood and marginal likelihood

Premansh Sharma
Updated on 13-Apr-2023 17:26:01

982 Views

Introduction Based on Bayes' theorem, the naive Bayes algorithm is a probabilistic classification technique. It is predicated on the idea that a feature's presence in a class is unrelated to the presence of other features. Applications for this technique include text categorization, sentiment analysis, spam filtering, and picture recognition, among many others. A key concept in probability theory, the Bayes theorem provides a method for calculating the likelihood of an event given the chance of related events. Conditional probability, or the possibility of an event happening in the presence of another occurrence, serves as the theoretical foundation. Prior, likelihood and ... Read More

Fair-share CPU scheduling

Arnab Chakraborty
Updated on 05-Apr-2023 17:04:14

2K+ Views

Introduction Fair-share CPU scheduling is a scheduling algorithm used in operating systems that aims to allocate CPU resources fairly among different user or process groups. The fair-share scheduler assigns a weight to each process or group based on its historical usage and allocates CPU resources based on these weights, ensuring that no group is starved of resources for an extended period of time. This allows for better resource utilization and provides equal opportunities for all groups to access the CPU. Fair-share scheduling is commonly used in multi-user systems and virtualized environments where multiple users or virtual machines share a single ... Read More

Bakery Algorithm in Process Synchronization

Manish Kumar Saini
Updated on 04-Apr-2023 16:05:33

2K+ Views

It is a prerequisite to understand the terms "process synchronization", "critical section", and "inter-process communication" before we proceed to discuss the Bakery Algorithm in Process Synchronization. What is Process Synchronization? In a multiprocessing system, the process synchronization is a method of coordinating execution of multiple processes so it is ensured that all the processes access shared resources in a controlled and predictable manner. The primary goal of process synchronization is to avoid the problem of race conditions in the system. Though, it also resolves many other issues related to synchronization in a concurrent system. Therefore, the process synchronization ensures that ... Read More

Edge Chasing Algorithms

Arnab Chakraborty
Updated on 04-Apr-2023 15:51:53

933 Views

Introduction Edge chasing is a technique used in operating systems and computer hardware to handle events or signals that occur asynchronously with the processor's clock cycle. This technique involves detecting and responding to events or signals as they occur, or as close to their occurrence as possible, to minimize the delay between the event and the system's response. Edge chasing algorithms are used to implement this technique and are an essential component of interrupt handling, input/output operations, and other time-sensitive tasks in modern computer systems. Basic Edge Chasing Algorithms The two basic edge chasing algorithms are polling and interrupts. Polling ... Read More

Dekker's Algorithm in Process Synchronization

Arnab Chakraborty
Updated on 04-Apr-2023 15:34:37

2K+ Views

Introduction Process synchronization is a critical concept in computer science, especially in operating systems. It involves coordinating the activities of multiple processes to ensure that they run correctly and avoid conflicts. Mutual exclusion is a fundamental problem in process synchronization that arises when multiple processes need to access a shared resource or critical section. If two or more processes simultaneously access the same shared resource, it can lead to incorrect results or data corruption. To solve this problem, various algorithms have been developed over the years. One of the most popular of these is Dekker's algorithm, which was proposed by ... Read More

Deadlock Detection Algorithm in Operating System

Arnab Chakraborty
Updated on 04-Apr-2023 15:24:55

18K+ Views

Introduction Deadlock is a situation that occurs in a computer system when two or more processes are blocked and waiting for each other to release resources, resulting in a stalemate. It's a serious issue in operating systems as it can cause the entire system to freeze or crash. Therefore, detecting and resolving deadlock is crucial for the smooth operation of any computer system. Deadlock detection algorithms are used to identify the presence of deadlocks in computer systems. These algorithms examine the system's processes and resources to determine if there is a circular wait situation that could lead to a ... Read More

How changes are Improvement in Modifying an Algorithm?

Sohail Tabrez
Updated on 29-Mar-2023 14:26:47

278 Views

Introduction Algorithms are essential tools that power the digital world we live in. From search engines to social media platforms, algorithms play a critical role in helping us navigate the vast amount of online information. However, even the most powerful algorithms need updates and modifications to keep up with the ever-evolving digital landscape. In this article, we'll explore how modifying an algorithm can significantly improve efficiency, accuracy, and ability to tackle new challenges. We'll dive into the world of algorithm optimization and explore the different ways in which modifications can transform an algorithm from a reliable tool into an ... Read More

Best Visualizations of Machine Learning Algorithms

Sohail Tabrez
Updated on 29-Mar-2023 09:10:25

355 Views

Introduction Machine learning algorithms are complex and often difficult to interpret and understand. Data visualization can help simplify the complex results generated by these algorithms and make them more accessible to experts and non-experts alike. In this article, we have discussed some of the best visualizations for machine learning algorithms and provided real-time examples. Machine learning algorithms are sophisticated mathematical models that use statistical methods to find patterns in data and generate predictions. Visualizations can shed light on how these algorithms function and the connections they find in the data, even though their inner workings can be challenging to comprehend. ... Read More

Advertisements