Prototypes » History » Version 26

Greg Burri, 06/21/2009 10:38 PM

1 1 Greg Burri
h1. Prototypes
3 6 Greg Burri
Prototypes are locate in the '/prototypes' directory in the repository. The goal is to write some code to try to resolve a particular problem which we don't know exactly how to solve.
4 2 Greg Burri
5 24 Greg Burri
# [[SHA-1 prototype]] : Creating SHA-1 hash for each part of a file. See [[Libraries]] for the list of SHA-1 lib. We must find the quickest library. The reference in term of speed is _sha1sum_ from the openssl package. The speed is approximately 150Mo/s for a cached file for an Intel 1.8 GHz Core2 CPU.
6 25 Greg Burri
# [[UTF8 prototype]] : Reading and writing files with UTF8 characters in theirs filename. Must be tested for the three platforms : Linux, Windows and MacOSX.
7 26 Greg Burri
# [[Search prototype]] Searching into a large set of files and directories with a glob string or a range of size, see the chapter 8 and 9 of RWH. Measure the average time for about 50'000 files, it should be below one minute for the first search and below 3 seconds for the next searches.
8 19 Greg Burri
# Observing the modifications of the files structure to hash new added files and remove hash from the cache when a file is deleted.
9 22 Greg Burri
# Efficient of the file transfer over TCP/IP with Haskell. It includes reading from the disk, streaming and writing to the disk. Comparisons with SMB and NFS.
10 21 Greg Burri
# Multicast UDP and periodically signal emitting.
11 14 Greg Burri
# Serializing and exchanging message with _Protocol Buffers_ in Haskell. see
12 23 Greg Burri
# Defining and testing the concurrent model for downloading and uploading.
## Reading and writing the same file from different threads.