summerofcode2012:udfimplementation

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
summerofcode2012:udfimplementation [2012/05/21 22:39] – OleksandrDudinskyisummerofcode2012:udfimplementation [2012/07/18 12:08] (current) – minor formatting fixes EugeneSyromyatnikov
Line 1: Line 1:
-Project Title: Port %%NetBSD%%'s UDF implementation+====== Port NetBSD's UDF implementation ======
  
-Name: Oleksandr Dudinskyi +  * Name: [[/OleksandrDudinskyi|Oleksandr Dudinskyi]] 
-Email: Dudinskyj@gmail.com+  * Email: Dudinskyj@gmail.com 
 +  * Phone: +380638666805 
 +  * IM/IRC: %%TranceX%% 
 +  * Languages (spoken and written): Ukraine, Russian, English 
 +  * Availability: I have enough time in this summer for implementation this project. I will not work anywhere in summer and plan working 30-35 hours per week in my project. Depending on the rate of of the project. 
 +  * Possible Mentor: [[/AndriyGapon|Andriy Gapon]] 
 +  * Bio: Current I am a student on technical specialty in my university and going to enter the magistracy.   Last summer I worked in freebsd project "[[/Disk device error counters|Disk device error counters]]". It bring me many skills during the project. Starting from work with the kernel and ending with the testing device read/write errors. It was interesting and useful lessons for me. And I want work on interesting projects in this summer.
  
-Phone: +380638666805+===== Project Information =====
  
-IM/IRC: %%TranceX%%+==== Project Description ====
  
-Languages (spoken and written): Ukraine, Russian, English+I plan realize functionality that was added in version udf
  
-Availability:+  * **2.01**: Many of the UDF standard's ambiguities were resolved in this version. 
 +  * **2.50**: Metadata Partition facilitating metadata clustering,easier crash recovery and optional duplication of file system information: 
 +  * **2.60**: Pseudo %%OverWrite%% method for drives supporting pseudo overwrite capability on sequentially recordable media.
  
-I have enough time in this summer for implementation this project. I will not work anywhere in summer and plan working 30-35 hours per week in my project. Depending on the rate of of the project. +For this I will porting netbsd implementation of UDF (code directory ''%%/sys/fs/udf/%%'' in src) where all needing of features exist.
- +
-Bio: +
- +
-Current I am a student on technical specialty in my university and going to enter the magistracy.   Last summer I worked in freebsd project "Disk device error counters".    http://wiki.freebsd.org/Disk%20device%20error%20counters +
- +
-It bring me many skills during the project. Starting from work with the kernel and ending with the testing device read/write errors.   It was interesting and useful lessons for me. And I want work on interesting projects in this summer. +
- +
-Possible Mentor: +
- +
-Andriy Gapon +
- +
-Project Information +
- +
-Project Description: +
- +
-I plan realize functionality that was added in version udf +
- +
-2.01. Many of the UDF standard's ambiguities were resolved in this version. +
-2.50. Metadata Partition facilitating metadata clustering,easier crash recovery and optional duplication of file system information: +
-2.60. Pseudo [[/OverWrite|OverWrite]] method for drives supporting pseudo overwrite capability on sequentially recordable media. +
-For this I will porting netbsd implementation of UDF (code directory /sys/fs/udf/ in src) where all needing of features exist.+
  
 I want to implement my project for several reasons: I want to implement my project for several reasons:
  
-1)UDF is used by most CD-R/RW packet-writing programs and commerical DVD-Video and +  - UDF is used by most CD-R/RW packet-writing programs and commerical DVD-Video and DVD-ROM discs that why basic understand principal of work udf is very interesting and cognitive. 
- +  - Many features which are in new revisions expand the system capability with this format in disk devices. 
-DVD-ROM discs that why basic understand principal of work udf is very interesting and cognitive. +  - It improves work with disks in %%FreeBSD%% for ordinary people including me. I do not know yet if I have enough time for realization write support, but I will start working in this direction and and finish after %%GSoC%%.
- +
-2)Many features which are in new revisions expand the system capability with this format in disk devices.+
  
-3)It improves work with disks in Freebsd for ordinary people including me.+==== Deliverables ====
  
-I do not know yet if I have enough time for realization write support, but I will start working in this direction and and finish after %%GSoC%%.+  * **May 21 - May 24**: transferring implementation UDF from %%NetBSD%% into %%FreeBSD%% source code and consider libraries used in the project (''%%ecma167-udf.h%%'', ''%%osta.h%%'', ''%%udf.h%%'', ''%%udf_mount.h%%'') what structures, flags and  parameters of main functions are used. 
 +  * **May 25 - June 10**: modify function ''%%udf_mount%%'', ''%%udf_mountfs%%'', ''%%udf_unmount%%'' and others for mount new type of disc in file ''%%udf_vfsops.c%%''. 
 +  * **June 11 - July 24**: modify function ''%%udf_access%%'', ''%%udf_getattr%%'', ''%%udf_open%%'', ''%%udf_pathconf%%'', ''%%udf_readdir%%'', add ''%%udf_advloc%%'', ''%%udf_close%%'' and others in file ''%%udf_vnops.c%%'' 
 +  * **June 25 - June 1**: making appropriate changes in ''%%udf_osta.c%%'' 
 +  * **June 1 - June 16**: add new key to maintenance command ''%%mount_udf%%'' for support new version of UDF, test and fix bugs in previous functional. 
 +  * **July 16 - July 29**: Adaptation ''%%udf_allocation%%'' to implement directory hashing to speed up directory traversals in mounted devices. 
 +  * **July 30 - August 5**: add new options to ''%%mount_udf(8)%%'' for example:
  
-Deliverables:+<code> 
 +-u uid      Set the owner of anonymous files on the file system.  The  
 +              default owner is the user nobody.  
 +-t gmtoff   Set the time zone offset (in seconds) from UTC to gmtoff,  
 +              with positive values indicating east of the Prime Meridian.  
 +              If not set, the user's current time zone will be used.   
 +-g gid      Set the group of anonymous files on the file system.  The  
 +              default group is the nobody group.  
 +</code>
  
-May 21 - May 24 -- transferring implementation UDF from %%NetBSD%% into %%FreeBSD%% source code and consider libraries used in the project (ecma167-udf.h, osta.h, udf.h, udf_mount.h) what structures, flags and  parameters of main functions are used. +  * **August 6 - August 12**: final test all parts of code. 
-May 25 - June 10 -- modify function udf_mount,  udf_mountfs, udf_unmoun and others for mount new type of disc in file udf_vfsops.c. +  * **August 13 - August 20**: write all documentation for implemented udf functional.
-June 11 - July 24 -- modify function udf_access, udf_getattr, udf_open,  udf_pathconf, udf_readdir, add udf_advloc, udf_close and others in file udf_vnops.c +
-June 25 - June 1 -- making appropriate changes in udf_osta.c +
-June 1 - June 16 -- add new key to maintenance command mount_udf for support new version of UDF, test and fix bugs in previous fuctional. +
-July 16 - July 29 -- Adaptation udf_allocation to implement directory hashing to speed up directory traversals in mounted devices. +
-July 30 - August 5 -- add new options to mount_udf(8) for example: +
--u uid      Set the owner of anonymous files on the file system.  The +
-default owner is the user nobody. +
--t gmtoff   Set the time zone offset (in seconds) from UTC to gmtoff, +
-with positive values indicating east of the Prime Meridian. +
-If not set, the user's current time zone will be used. +
--g gid      Set the group of anonymous files on the file system.  The +
-default group is the nobody group. +
-August 6 - August 12 -- final test all parts of code. +
-August 13 - August 20 -- write all documentation for implemented udf functional.+
  
-Test Plan:+==== Test Plan ====
  
-For testing my code I will mount different type of discs, various DVD-Video and DVD-ROM disks, also CD-R, CD-RW, CD-MRW, DVD-RW, DVD+RW, DVD+MRW,  Blu-ray Disc,(USB) flash media and harddisc partitions.      Also compare the speed of operation with support directories hashing using the timer.+For testing my code I will mount different type of discs, various DVD-Video and DVD-ROM disks, also CD-R, CD-RW, CD-MRW, DVD-RW, DVD+RW, DVD+MRW,  Blu-ray Disc, (USB) flash media and harddisc partitions. Also compare the speed of operation with support directories hashing using the timer.
  
  • summerofcode2012/udfimplementation.1337639958.txt.gz
  • Last modified: 2012/05/21 22:39
  • by OleksandrDudinskyi