Difference between revisions of "OPS435 Python Assignment 2 C"
(→Module name, function names, function parameter(s) and return values) |
|||
Line 21: | Line 21: | ||
** start sector number (in LBA mode) | ** start sector number (in LBA mode) | ||
** size of partition in sectors | ** size of partition in sectors | ||
− | * gpt_part() - which when called with a valid physical storage device name, will return all the partitions found on the device. | + | * gpt_part() - which when called with a valid physical storage device name, will return all the partitions found on the device. Each partition information return must contain the following fields: |
+ | ** Partition type GUID | ||
+ | ** Unique partition GUID | ||
+ | ** First LBA sector of the partition | ||
+ | ** Last LBA sector of the partition | ||
+ | ** Attribute flags | ||
+ | ** Partition name | ||
+ | |||
= Resources = | = Resources = | ||
* [https://en.wikipedia.org/wiki/Master_boot_record Master Boot Record - 4 partition entries] | * [https://en.wikipedia.org/wiki/Master_boot_record Master Boot Record - 4 partition entries] | ||
* [https://en.wikipedia.org/wiki/Extended_boot_record Extended partition and logical partitions] | * [https://en.wikipedia.org/wiki/Extended_boot_record Extended partition and logical partitions] | ||
* [https://en.wikipedia.org/wiki/GUID_Partition_Table GPT partitions] | * [https://en.wikipedia.org/wiki/GUID_Partition_Table GPT partitions] |
Revision as of 23:53, 2 April 2018
Contents
Overview
In order to use a physical storage device (e.g. Hard Disk, USB Flash memeory, SSD, etc.), the first step is to create partition(s) on it. There many different ways to partition a physical storage device. The two most common partition schemes used on Intel based micro-computer systems are MBR and GPT. Detail about the MBR partition scheme can be found here, and GPT partition scheme can be found at [1].
On most Linux systems, fdisk or parted can be used to create, view, and manage MBR and GPT partition.
The task for this assignment is to write a python module named "partinfo.py", which contains at least three functions: part_scheme(), mbr_part(), gpt_part().
Instruction
Module name, function names, function parameter(s) and return values
Name your python module as "partinfo.py". The module should contains at least the following 3 functions:
- part_scheme() - which when called with a valid physical storage device name, will return the partition scheme used on the device. The return value should only be
- None - no valid partition scheme found on the device
- MBR - MBR partitions is/are found on the device
- GPT - GUID partitions is/are found on the device
- mbr_part() - which when called with a valid physical storage device name, will return all the partitions (primary, extended, and logical) found on the device. Each partition information return must contain the following fields:
- partition number
- partition flag (bootable or not)
- partition type
- start sector number (in LBA mode)
- size of partition in sectors
- gpt_part() - which when called with a valid physical storage device name, will return all the partitions found on the device. Each partition information return must contain the following fields:
- Partition type GUID
- Unique partition GUID
- First LBA sector of the partition
- Last LBA sector of the partition
- Attribute flags
- Partition name