Skip to content

Robert-Emerson/1501_final

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 

Repository files navigation

1501_final

Haskell 1501 Final Project

Author: Robert Emerson

Date: 04/20/2013

Description: Executing main.hs will begin a fork bomb written in Haskell and bash.

Purpose: This program is a foray into system programming with Haskell. It uses the IO Monad, will compile, and manages to do exactly what I wanted it to do. Additionally, it is available on GitHub at https://github.com/Robert-Emerson/1501_final.

Execution: The program will prompt the user to save all files, as the easiest way to recover from this is to restart your computer. Then, if the user chooses to continue, it will run the readProcess command in Haskell. The arguments to this command cause it to launch a terminal, create a shell script containing a fork bomb in the bash shell scripting language and then execute this script.

Design Decisions: This program was initially designed to use the forkProcess function in Haskell. It was re-written to use the bash fork bomb after testing revealed that the Haskell code did not cause the computer to run out of resources and freeze. Instead, the Haskell version ran and spawned ~63,000 processes, but eventually hit the process limit enforced by the OS. To freeze the computer, a heavier weight process had to be replicated, and I chose bash.

About

Haskell 1501 Final Project

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published