http://www.linuxnewsblog.com - Your Daily News

Tuesday, March 31, 2009

Marble - Get involved!

We’ve recently extended our Marble Wiki to include more documentation about how you can participate in Marble development. Here are a few possible jobs for a start:

  • If you are an artist or interested in historical world maps you can help us to improve our “Historic Maps” library: Magnus Valle (”wiscados” on #kde-edu) has done some great work in this area (resulting in the Historic Map that comes with Marble 0.7). Find out here how you are able to take part in this.
  • For source code aficionados we have lots and lots of JuniorJobs for Marble. You can have a look at our How to become a Marble Developer page to find out how to tackle those.
  • If you’re a student and you are still looking for a Google Summer of Code 2009 topic, then you can either look at the KDE ideas page or you look at Wikipedia’s fine article about Virtual Globes. They got a nice comparison matrix there which even includes Marble. There are still a few red “No” marks there which might help you to get an idea for your Marble topic for the Google Summer of Code application (like e.g. Movie Maker, Guides, Planetarium, etc.). Just make sure that you don’t work on “Imagery of other planets” as Marble already has got this feature since Marble 0.7 (the author of the article just hasn’t updated the page yet and I myself don’t want to edit such wikipedia pages due to my obvious bias Eye-wink

If you’d like to help us or have questions regarding Marble, just join us on IRC ( channel #kde-edu on irc.kde.org ) or write an e-mail to marble-devel@kde.org.



Read More...

[Source: Linux Blogs2k - Posted by FreeAutoBlogger]

iotop, get information about input / output

Gnome Logo

Continuing with my review of performance tools, I will now introduce you with iotop which is a top-like python application that will let you know in real time the data written and read from the disk, as well as, the average speed of these input and output actions.

If you administer sites, you need to know which applications are reading and writing to the disk, so you can improve the performance of the server.

Installing it

Before installing it be sure to have:

Python = 2.5 and a Linux kernel = 2.6.20, to know the versions you have do this:

python -V

and for the kernel enter:

uname -r

then if everything is O.K. install it:

sudo aptitude install iotop

Or use your Distribution’s package manager.

If it is not available for your distribution, download the .tar.gz from its web page

Using it

The usage is:

iotop [OPTIONS]

and the main options are:

-o –only
Only show processes or threads actually doing I/O, instead of showing all processes or threads.
This can be dynamically toggled by pressing o.
-d SEC, –delay=SEC
Set the delay between iterations in seconds (1 second by default). Accepts non-integer values such as 1.1 seconds.

-b, –batch

Turn on non-interactive mode. Useful for logging I/O usage over time.

I like to use it with the -o switch, to see only the processes that are actually writing or reading the disk, combining it with -b switch, gives also a nice output to log over the time.

So using this:

iotop -o -b

Gives something like this output:

  PID USER      DISK READ  DISK WRITE   SWAPIN    IO    COMMAND 2894 ggarron        0 B/s   19.26 K/s  0.00 %  0.00 % firefoxTotal DISK READ: 0 B/s | Total DISK WRITE: 211.87 K/s  PID USER      DISK READ  DISK WRITE   SWAPIN    IO    COMMAND  571 root           0 B/s  211.87 K/s  0.00 %  2.01 % [kjournald]Total DISK READ: 0 B/s | Total DISK WRITE: 0 B/s  PID USER      DISK READ  DISK WRITE   SWAPIN    IO    COMMANDTotal DISK READ: 0 B/s | Total DISK WRITE: 0 B/s  PID USER      DISK READ  DISK WRITE   SWAPIN    IO    COMMANDTotal DISK READ: 0 B/s | Total DISK WRITE: 0 B/s  PID USER      DISK READ  DISK WRITE   SWAPIN    IO    COMMANDTotal DISK READ: 0 B/s | Total DISK WRITE: 0 B/s  PID USER      DISK READ  DISK WRITE   SWAPIN    IO    COMMANDTotal DISK READ: 0 B/s | Total DISK WRITE: 0 B/s  PID USER      DISK READ  DISK WRITE   SWAPIN    IO    COMMAND  571 root           0 B/s       0 B/s  0.00 %  0.07 % [kjournald]

Here you also have a screenshot of the interactive mode, taken from its official site:



Read More...

[Source: Linux Blogs2k - Posted by FreeAutoBlogger]

Portable Meta-Information continued

In a recent blog, David Nolden talks about transferring user-generated, file associated meta-data. His post was well written and the ensuing discussion interesting. I’d like to continue his line of thought here.

Anything the user creates on his machine should be easy to archive, synchronize, share, query and protect. Most data these days is stored as separate files. The idea of the semantic desktop is to make content depend less on files. The file is just the container of the content. The content consists of various concepts and relations between the concepts. Also, there are bigger data blobs, usually multimedia files, but also industrial data types like measurement results, logging files and databases.

As long as nuggets of data are separate entities, this is fine. But what do you do with small annotations to files such as ratings, tags, or source logs? The Nepomuk solution is to store this data in a central database. David promotes the use of companion files to the content files. This type of file is called a sidecar file. To speed up meta-data querying, a central index is required.

This is an interesting approach even though it is not a complete solution. I’d like to emphasize that the requirements for meta-data are the same as those for normal data. Both are data and both are valuable.

Let us look at an example of extensive meta-data use. We forget for a bit the details of how to store and manipulate data and simply imagine we have only data and storage media. On storage A, there is an audio track. The audio track was recorded at a certain time and place by a certain person. Recorded are sounds created by other persons. The owner of storage A, Mrs X, records her opinion about the track in a couple of paragraphs of English prose and as a collection of grades for some aspects of the track.

Mr Y is permitted to lend the storage of Mrs X. Mr Y records his opinion about and listening behavior of the track on his personal storage disk, B. He shares his opinion of the track with Mrs X, but keeps the information about where and when he listened to the track private. This follows the policy he has laid out on his personal devices with respect to audio tracks lent to him. His audio player enforces this policy for him. Mr Y also makes a link between the track of Mrs X and an audio track he once borrowed of Mr Z. In the link he stores a comment about certain similarities between the tracks.

In the meantime, Mrs X keeps listening to the track on her second mobile storage C. When Mr Y returns storage A, Mrs X synchronizes it with C and makes a backup of C to her media tank, D.

There are many technical issues that must be solved to enable a relatively simple scenario like the above.
- X and Y must both be able to handle the audio protocol in which the track is recorded
- X and Y must use a common ontology for the prose review, grade points and gradable categories
- X and Y must both use software that understands the way in which the data and meta-data is stored on storage A
- Y must be able to store meta-data about data that is no longer in his possession
- Y must be able to define a filter that influences the way meta-data is synchronized across different data storages
- Y must be able to store relations between two or more data items
- X must be able to synchronize and merge different meta-data items with meta-data specific rules.

Using sidecar files does not solve any of the above issues on its own. This does not mean that it is a bad idea. It just means that it is not a complete solution. There is still an awful lot of functionality required in addition. Sidecar files allow programs that know nothing of meta-data or ontologies to keep that data intact during copying of directories. But that is not nearly enough for handling meta data. Hence sidecar files will always be an incomplete solution.

Another interesting and also incomplete solution is a proposal on live.gnome.org. It is recommended reading.

It is clear that we need way of handling data that goes beyond what the current file systems can do. What alternatives are there? We could keep all data in a triple store which can also be exposed as and synchronized with traditional file systems and might even be a traditional file system underneath.



Read More...

[Source: Linux Blogs2k - Posted by FreeAutoBlogger]