Accumulative Versioning File System Moraine and Its Application to Metrics Environment Mame - PowerPoint PPT Presentation

About This Presentation
Title:

Accumulative Versioning File System Moraine and Its Application to Metrics Environment Mame

Description:

We have measured a response time for a UNIX process to write files. ... Registering a new version requires some supporting tools associated with the file system. ... – PowerPoint PPT presentation

Number of Views:33
Avg rating:3.0/5.0
Slides: 30
Provided by: selIstO
Category:

less

Transcript and Presenter's Notes

Title: Accumulative Versioning File System Moraine and Its Application to Metrics Environment Mame


1
Accumulative Versioning File System Moraine and
Its Application to Metrics Environment Mame
  • Tetsuo Yamamoto
  • Makoto Matsushita
  • Katsuro Inoue ,
  • Osaka University, Japan
  • Nara Institute of Science and Technology, Japan

2
Disc Capacity of 1995
  • 200-------- 0.54Gbytes

Free Space 0.39Gbytes
Linux (Slackware2.2Basic ApplicationsX window)
0.15Gbytes
3
Disc Capacity of 2000
  • 200 -------- 40Gbytes

Free Space 39Gbytes
Linux (RedHat7Basic ApplicationsX window)
1Gbytes
4
Benefits of Large Disc Capacity
  • Ordinary PC users
  • JPEG, MPEG, MP3, HTML, ...
  • Our Software Engineers
  • ?
  • We still use software product management scheme
    which were devised and developed under limited
    disc capacity in old days.

5
Archiving Software Product Evolution
  • 5 years ago, it was very expensive, practically
    impossible.
  • Now, it may be possible.

FreeBSD 4.1.1

FreeBSD 2.0

23 Release Versions

100Mbytes
270Mbytes
Develop using CVS
1994
2000
Current Archive Size 1Gbytes
  • Current disks have enough space to archive
    product evolutions made by each engineer.

6
Development of Moraine and Mame
  • Based on this motivation, we have devised
  • two things.
  • Automatic SE product archive scheme
  • -gt Versioning file system Moraine
  • Open structured, Non-proprietary
  • Quantitative development management framework
  • -gt Metrics environment Mame
  • (Moraine As a Metrics Environment)

7
Design Policies of Moraine
  • Automatic Archiving
  • Moraine automatically records the fine-grained
    versions of all files.
  • Easy Operation
  • Users are not required to learn how to use
    Moraine. To do this, usual file read/write
    operations are hooked, and versioning works are
    performed by Moraine.
  • Open Structure
  • Moraine does not have to have proprietary data
    repository or versioning tools.

8
Features of Moraine
  • Moraine always shows the only latest version in
    the repository to the user.

9
Architecture of Moraine
User
User
Kernel
User Process
VFS
VCD
Vertical File System
Version Control Daemon
Version Management Sub-System
UFS
Unix File system
RCS
VFS is designed as a stackable file system. It is
a logical file system above physical file system
like UFS.
HDD

Control Commands
-retrieve versions -show a delta
10
Stackable File System
  • Stackable file system can be constructed without
    changing existent file system.
  • The output of a stackable file system is a file
    sent to the lower file system.
  • Stackable file system has a portability.

11
Architecture of Moraine
VCD is a daemon process which acts as a bridge
between the kernel and the version management
sub-system.
User
User
Kernel
User Process
VFS
VCD
Vertical File System
Version Control Daemon
Control commands help to manage system behavior.
Version Management Sub-System
UFS
RCS
The version management sub-system performs the
version create work such as delta computing
between versions.
HDD

Control Commands
-retrieve versions -show a delta
12
Evaluation of Moraine
  • To know that Moraine is practically acceptable,
    we have measured system performance and stored
    data size.
  • Measurement environment
  • We have compared Raw UFS (UNIX file system) with
    Moraine.
  • Machine Pentium 166MHZ/48MB RAM
  • We used such a low performance computer to
    increase comparison sensitivity.

13
Evaluation -Read-
  • We have measured a response time for a UNIX
    process to read files.

14
Evaluation -Write-
  • We have measured a response time for a UNIX
    process to write files.

15
Evaluation -Write-
  • We have measured a response time for a UNIX
    process to write files.

MoraineSync time for completion of all write
operations
16
Evaluation -Data Size- 1/2
  • We have applied Moraine to the student project of
    our university.

Student1 Student2 Student3
LOC 9339 4067 2543
of files 45 20 18
Final file size(KB) 225 117 73
of all versions 533 249 357
of versions of source codes 311 147 247
Student1 Student2 Student3
LOC 9339 4067 2543
of files 45 20 18
Final file size(KB) 225 117 73
of all versions 533 249 357
of versions of source codes 311 147 247
17
Evaluation -Data Size- 2/2
18
Overviews of Mame
  • Mame uses Moraine to collect metrics data.
  • Mame(Moraine As a Metrics Environment) is an
    infrastructure for quantitative product
    measurement of ordinary software development
    activities.

19
Features of Mame
  • Engineers do not need to change their working
    environments.
  • The data of various activities on the environment
    is automatically collected.
  • Mame provides fine-grained data and can be
    abstracted.
  • The data format is non-proprietary.

20
Architecture of Mame
  • Development environment for software engineers is
    put above Moraine.

Development Activities
Analysis data
Moraine
Read/Write files
VFS
VCD
UFS
RCS
HDD

Commands
21
Experiment of Using Mame
  • We have applied Mame to the student project which
    is the same one used as the evaluation of
    Moraine.
  • The metrics data was obtained after the project
    termination.
  • Metrics data
  • The number of files
  • The total lines of codes in the files
  • The number of C functions in the source files

22
Product Evolution 1/2
147
147
  • The horizontal axis is the cumulative number of
    versions for C source files

23
Product Evolution 2/2
147
  • The developer first created skeleton of
    functions, then he filled function bodies.

24
Discussions(Moraine)
  • Moraine automatically collects all versions of
    all files created or modified.
  • We can recover any old files and any old versions
    if necessary.
  • The performance of Moraine is enough as a basis
    of software development platforms.

25
Discussions(Mame)
  • There are no specific enforcement to the
    developers.
  • We can set up or change data collection policy
    during the project or after the project.
  • Ordinary metrics environments require
    predetermined data collection policy.

26
Related Work
  • COMPAQ(DEC) OpenVMS
  • The file system is the proprietary system.
  • ClearCase, PVCS, Visual Source Safe
  • Users have to recognize the systems and to issue
    check-in/check-out commands for the version
    management.
  • 3D Filesystem
  • Registering a new version requires some
    supporting tools associated with the file system.

Our Moraine does not need any knowledge or
commands of archiving for users.
27
Conclusion
  • We presented Moraine that automatically records
    the history of files. It is very practical.
  • We also presented Mame which collects data of
    various activities without a burden to the
    developers.
  • This approach would be one answer to rapid
    increase of disk space.

28
The End
29
Version Viewer
Write a Comment
User Comments (0)
About PowerShow.com