ANOTHER LINUX KERNEL PROJECT

Анульовано Опубліковано %project.relative_time Оплачується при отриманні
Анульовано Оплачується при отриманні

I Have a school project to finish by Thursday. but i think i can not do it on my own. In this project, I m required to change the Linux kernel, mainly the “file system?? sub-system. I M supposed to make necessary modifications to the code so that it is possible to monitor and limit the users’ usage of the file [url removed, login to view] will be a demo for presenting the project. So coder also has to write down a summary of his work. it should be finish before Thursday. The details are as follows:

## Deliverables

1. The modification you have made must be selectable by the “root?? only, via a system call, if a user other than root tries to use the system call, the function should not start the modified sections and return error. 2. root (system administrator) will set a policy for the system and will notify the kernel using the system call, which we shall name as lim_fs_usage. It will take one parameter only, which is explained below. • The parameter is the maximum transfer amount per minute (for file operations). • This will be the maximum number of bytes all users (see 5) can access in a minute. For example if this number is say 4096, all users can use 4096 bytes of file system in total for a minute, not more. • The distribution of this restricted resource (file access) among the users is your choice. At one extreme case you can divide the resource among the active users equally. For instance there are 4 users and each can use up 1024 bytes. But in this case, if a user does not use his share, a resource is wasted. At the other extreme case, you may use a FCFS system and the users use the file system freely until the quota is reached. This way resource is not wasted. However a user may lose the chance to use the file system due to other users. Therefore it is not fair. • You may implement something in the middle. An implementation will get a better grade if it is both fair and resource friendly (does not waste resource). 3. This limit is in user-level, not file-level. This means the limit restricts the TOTAL file system operations that all users (see 5) can do simultaneously (for example multiple file copying via different processes of the same user) 4. Your limitations must be mandatory (and hence in the low level). Users must not be able to by-pass them, they must be enforced in kernel space. User level operations are not acceptable. 5. Decide whether to impose this restriction on root or not, implement your decision. You will be asked to justify your decision in the report and during the demo. 6. To stop kernel’s usage of your code, root will call the system call with a parameter 0. Your limits will not effective after this call. 7. When the system switches to limited state, you must print an information line stating this fact, like “limits are effective at 2000 bytes per minute??. Similarly an info line like “limits are not effective anymore?? should be printed when system call is called with 0, switching back to non-limited state. 8. Whenever possible print informative strings during the operations, you will decide on what is informative. Logical informative strings will affect your grade positively. 9. In short, change the kernel as necessary; supply a system call that will make your changes effective or not. Do not make useless/meaningless/not-justifiable assumptions, because if your assumption is not good enough then you will lose points. For example if your program works for only users with names starting say “b?? then your project will be evaluated as incomplete. Think well about your assumptions and decisions. Plan ahead, start early and finish early. Remember that you are required to prepare a detailed project report and submit it in hard copy (Detailed in terms of information; not words/figures). Your report should explain the work you have accomplished, not the reason of using j as the name of a variable of your functions. Notice that you will give a hard-copy of your report, meaning if you try to email the report on the last day it will be just ignored and not accepted. You will submit a bootable CD that is bootable. Also another CD with the codes you have changed in the kernel or added to the kernel will be submitted, with the system call to be used while testing

## Platform

UBUNTU 8.04 WITH KERNEL [url removed, login to view]

Linux Odd Jobs

ID Проекту: #3103408

Про проект

Дистанційний проект Остання активність Jan 19, 2010