From cf7755634f2c2d2a9224643aa23ff43bbbf1cb17 Mon Sep 17 00:00:00 2001
From: j2-mcdaid <jack2.mcdaid@live.uwe.ac.uk>
Date: Fri, 6 Dec 2024 18:08:27 +0000
Subject: [PATCH] Update READme.md

---
 Worksheets/Worksheet2/Task 1/READme.md | 14 ++++++++++++--
 1 file changed, 12 insertions(+), 2 deletions(-)

diff --git a/Worksheets/Worksheet2/Task 1/READme.md b/Worksheets/Worksheet2/Task 1/READme.md
index 75a6523..4ffd440 100644
--- a/Worksheets/Worksheet2/Task 1/READme.md	
+++ b/Worksheets/Worksheet2/Task 1/READme.md	
@@ -1,2 +1,12 @@
-<h1>Task 1<h1>
-[Worksheet 2](https://gitlab.uwe.ac.uk/j2-mcdaid/advanced-systems-programming/-/tree/main/Worksheets/Worksheet2) | [Task 2](https://gitlab.uwe.ac.uk/j2-mcdaid/advanced-systems-programming/-/tree/main/Worksheets/Worksheet2/Task%202) | [Task 3](https://gitlab.uwe.ac.uk/j2-mcdaid/advanced-systems-programming/-/tree/main/Worksheets/Worksheet2/Task%203) 
\ No newline at end of file
+<h1>Task 1</h1>
+[Worksheet 2](https://gitlab.uwe.ac.uk/j2-mcdaid/advanced-systems-programming/-/tree/main/Worksheets/Worksheet2) | [Task 2](https://gitlab.uwe.ac.uk/j2-mcdaid/advanced-systems-programming/-/tree/main/Worksheets/Worksheet2/Task%202) | [Task 3](https://gitlab.uwe.ac.uk/j2-mcdaid/advanced-systems-programming/-/tree/main/Worksheets/Worksheet2/Task%203) </br>
+
+Task 1 required the construction of a bump allocator. This is a basic design and as such has many limitations such as only being able to free all memory at once. To create the allocator several key aspects are needed. As many smaller aspects of the design were covered in worksheet 1, the write up here will focus on overall design decisions and aspects not touched upon in worksheet 1.
+
+<h3>Step 1 - Class design</h3>
+
+In this case the class design is relatively simple as the class only neeeds a handfull of attributes and methods. The attributes needed govern the start point and size of the heap, as well as the "next" pointer and the allocator count. The methods are almost as simple with standard destructor and constructor, with the allocator and deallocator being slightly more involved. The header file has been used to declare the attributes and methods while the methods have been defined within the allocator.cpp file. This follows convention and makes the code more parseable.</br>
+Allocator.hpp:</br>
+![Allocator.hpp](https://gitlab.uwe.ac.uk/j2-mcdaid/advanced-systems-programming/-/raw/main/Worksheets/Worksheet2/images/task1_bAllocator_class.png "Allocator.hpp")</br>
+Allocator.cpp:</br>
+![Allocator.cpp](https://gitlab.uwe.ac.uk/j2-mcdaid/advanced-systems-programming/-/raw/main/Worksheets/Worksheet2/images/task1_bAllocator_define.png "Allocator.cpp")</br>
-- 
GitLab