-
Notifications
You must be signed in to change notification settings - Fork 4
xwu64/525-PA1
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
===================================================================================== = 525 Programming Assignment 1 README file = ===================================================================================== 1. Personnel information [email protected] 20354020 Xiaoliang Wu (representative) [email protected] 20355209 Zhipeng Liu [email protected] 20352628 Xincheng Yang [email protected] 20352609 Chuanwei Tu ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2. File list dberror.c dberror.h Makefile README storage_mgr.c storage_mgr.h test_assign1_1.c test_assign1_2.c test_helper.h ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 3. Milestone 2016/02/07 all function have pass test. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 4. Installation instruction using test_assign1_1.c test: $ make test1 $ ./test1 using test_assign1_2.c test: $ make test2 $ ./test2 after test, use clean to delete files except source code. $ make clean ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 5. Function descriptions: of all additional functions /*************************************************************** * Function Name: initStorageManager * * Description:to let user know enter the StorageManager * * Parameters:void * * Return:void * * Author:Chuanwei Tu * * History: * Date Name Content * 2016/2/1 Chuanwei Tu initializing the Storage Manager * ***************************************************************/ /*************************************************************** * Function Name: createPageFile * * Description: Create a new page file fileName. The initial file size should be one page. This method should fill this single page with '\0' bytes. * * Parameters: char *fileName * * Return: RC * * Author: Xiaoliang Wu * * History: * Date Name Content * -------------- -------------------------- ---------------- * 2016/02/07 Xiaoliang Wu implement function * ***************************************************************/ /*************************************************************** * Function Name: openPageFile * * Description: Opens an existing page file. * * Parameters:char *fileName ,SM_FileHandle *fHandle * * Return: RC * * Author: Xiaoliang Wu * * History: * Date Name Content * 2016/02/07 Xiaoliang Wu implement function * ***************************************************************/ /*************************************************************** * Function Name: closePageFile * * Description: Close an open page file * * Parameters: SM_FileHandle *fHandle * * Return: RC * * Author: Xiaoliang Wu * * History: * Date Name Content * 2016/02/07 Xiaoliang Wu implement function * ***************************************************************/ /*************************************************************** * Function Name: destroyPageFile * * Description: destroy (delete) a page file * * Parameters: SM_FileHandle *fHandle * * Return: RC * * Author: Xiaoliang Wu * * History: * Date Name Content * 2016/02/07 Xiaoliang Wu implement function * ***************************************************************/ /*************************************************************** * Function Name: readBlock * * Description: read the pageNum block from the file defined by fHandle into address memPage * * Parameters:int pageNum, SM_FileHandle *fHandle, SM_PageHandle memPage * * Return:RC * * Author:Zhipeng Liu * * History: * Date Name Content * 2016/1/30 Zhipeng Liu first time to implement the function * ***************************************************************/ /*************************************************************** * Function Name: getBlockPos * * Description:return the current block position in the file * * Parameters:SM_FileHandle *fHandle * * Return: RC * * Author:Zhipeng Liu * * History: * Date Name Content * 2016/1/30 Zhipeng Liu first time to implement the function * ***************************************************************/ /*************************************************************** * Function Name: readFirstBlock * * Description:read the first block of the file described in fHandle * * Parameters:SM_FileHandle *fHandle, SM_PageHandle memPage * * Return:RC * * Author:Zhipeng Liu * * History: * Date Name Content * 2016/1/30 Zhipeng Liu first time to implement the function * ***************************************************************/ /*************************************************************** * Function Name:readPreviousBlock * * Description:read the previousblock in this file into the address witch memPage pointed * * Parameters:SM_FileHandle *fHandle, SM_PageHandle memPage * * Return:RC * * Author:Zhipeng Liu * * History: * Date Name Content * 2016/1/27 Zhipeng Liu first time to implement the function * ***************************************************************/ /*************************************************************** * Function Name: readCurrentBlock * * Description: read the current block (pointed by the fHandle->curPagePos) into memo address memPage * * Parameters: SM_FileHandle *fHandle, SM_PageHandle memPage * * Return: RC * * Author: Zhipeng Liu * * History: * Date Name Content * 2016/1/27 Zhipeng Liu first time to implement the function * ***************************************************************/ /*************************************************************** * Function Name: readNextBlock * * Description: read the next block (the current block defined in the fHandle->curPagePos) in to memo address memPage * * Parameters: SM_FileHandle *fHandle, SM_PageHandle memPage * * Return: RC * * Author: Zhipeng Liu * * History: * Date Name Content * 2016/1/27 Zhipeng Liu first time to implement the function * ***************************************************************/ /*************************************************************** * Function Name: readLastBlock * * Description: read the last block in this file into memo address memPage * * Parameters: SM_FileHandle *fHandle, SM_PageHandle memPage * * Return: RC * * Author: Zhipeng Liu * * History: * Date Name Content * 2016/1/27 Zhipeng Liu first time to implement the function * ***************************************************************/ /*************************************************************** * Function Name: writeBlock * * Description: Write a page to disk using either the current position or an absolute position. * * Parameters: int numberOfPages, SM_FileHandle *fHandle * * Return: RC * * Author: Xincheng Yang * * History: * Date Name Content * 2016/2/2 Xincheng Yang first time to implement the function * 2016/2/2 Xincheng Yang modified some codes * ***************************************************************/ /*************************************************************** * Function Name: writeCurrentBlock * * Description: Write a page to disk using either the current position or an absolute position. * * Parameters: int numberOfPages, SM_FileHandle *fHandle * * Return: RC * * Author: Xincheng Yang * * History: * Date Name Content * 2016/2/2 Xincheng Yang first time to implement the function * ***************************************************************/ /*************************************************************** * Function Name: appendEmptyBlock * * Description: Increase the number of pages in the file by one. The new last page should be filled with zero bytes. * * Parameters: int numberOfPages, SM_FileHandle *fHandle * * Return: RC * * Author: Xincheng Yang * * History: * Date Name Content * 2016/2/1 Xincheng Yang first time to implement the function * 2016/2/2 Xincheng Yang modified some codes * ***************************************************************/ /*************************************************************** * Function Name: ensureCapacity * * Description: If the file has less than numberOfPages pages then increase the size to numberOfPages. * * Parameters: int numberOfPages, SM_FileHandle *fHandle * * Return: RC * * Author: Xincheng Yang * * History: * Date Name Content * 2016/2/1 Xincheng Yang first time to implement the function * ***************************************************************/ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 6. Additional error codes: of all additional error codes RC_CREATE_FILE_FAIL Unkown reasons that cause creating file fail. RC_GET_NUMBER_OF_BYTES_FAILED Unkown reasons that cause program cannot get size of file when program open file. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 7. Data structure: main data structure used No additional data structure are used. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8. Extra credit: of all extra credits There are additional tests that are implemented in test_assign1_2.c. In this test, it test all functions that are not tested in test_assign1_1.c. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 9. Additional files: of all additional files No additional files. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 10. Test cases: of all additional test cases added test case in test_assign1_1.c testCreateOpenClose() test createPageFile, openPageFile, closePageFile, destroyPageFile functions. testSinglePageContent() test createPageFile, openPageFile, readFirstBlock, writeBlock, readFirstBlock, destroyPageFile, functions. test case in test_assign1_2.c testRestFunc() test createPageFile, openPageFile, readFirstBlock, writeBlock, getBlockPos, readPreviousBlock, readCurrentBlock, readNextBlock, appendEmptyBlock, readLastBlock, writeCurrentBlock, ensureCapacity, destroyPageFile, functions. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 11. Problems solved Implement all required functions and additional test case. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 12. Problems to be solved This program could be optimized.
About
No description, website, or topics provided.
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published