Draft is pasted below. Let me know if some changes are required. Thanks. Jay R. Joshi E-mail: [email protected] Github: https://github.com/JayRJoshi
GSOC Proposal: Comprehensive Test Suite + Documentation Abstract: By the end of this project, strace will have covered test for every syscall. Also, documentation of coding standards for strace will be written. If coding standards have clear patterns so that they can be converted to regular expressions, I would write script to enforce coding standards as well. Previous Projects: In a previous semester, I’d developed an online judge, a platform which lets you run a code and do correctness as well as efficiency check for a particular problem definition and showing errors, if any (https://github.com/JayRJoshi/OJ). Besides that, I’ve coded Boolean Expression Optimiser, One-Player Connect-4 game, some small programs like finding fibonacci number in x86 assembly. I’d designed a game of pile, (like the 100 game) in Logisim - a digital logic circuit simulator. Currently, I’m experimenting on linux kernel. Specifically, My focus is to improve process scheduler performance by statistical analysis. Addition of new scheduler class or modification to CFS are considered. Courses that I’ve taken up include Operating Systems, Computer Architecture, Design and Analysis of Algorithms, Software Engineering, Data Structures, Database Management Systems. I’m a third year BTech Computer Engineering student from Nirma University. Acadamic Skills that will help me achieve a goal include C, Git, shell script, regex, Makefiles. Open Source Project Contributed to: Strace. Preparatory work: I think I understand strace codebase fair enough, in particular part which steams out syscall output and /tests directory code. I’ve submitted patches for getcwd syscall, added a function to libtests, and fixed minor bug in scm_right-fd.test, also uname.c . I’ve gained right intuition needed to complete this task. Future work: It’s just the deadline and mid-term evaluation that matters. I’ve already started working on things which I must have a firm understanding of to write tests for syscalls. Here are some quick checklists: -> Using qemu to test new tests for various architectures. -> Learning more about architecture specific syscall details and quirks. -> Learning sed. -> Learning syscalls and relate it with other syscalls and their pattern of tracing. -> Learning networking related syscalls in details. -> Linux kernel handling of syscalls (my academic project also requires similar knowledge of the subject) in general detail. -> Observation and discussion about coding standards. Syscalls are nicely organized in different files already (like, resource control related files in resource.c), so task will be divided into covering different files in one go, rather than lone syscalls. (except in rare occasions). By mid-term, file related syscalls, resource related syscalls, signal related and memory related syscalls should be added (at least). The rest of syscalls: disk specific, net specific, etc will be added. [ If you’ve suggestion to schedule it otherwise, please let me know ] Moreover, I’ll submit documentation for coding standards (with reason as to why you should follow a particular standard). If coding standards will become very well defined such that I can write regular expressions for that, I’ll be very happy to write script which enforce coding standards. Although, university will be started by end of July. I’ll be committed to this work at the rest of the time. ------------------------------------------------------------------------------ Transform Data into Opportunity. Accelerate data analysis in your applications with Intel Data Analytics Acceleration Library. Click to learn more. http://pubads.g.doubleclick.net/gampad/clk?id=278785351&iu=/4140 _______________________________________________ Strace-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/strace-devel
