Need some guidance for a class project (count the number of times write() is invoked)
Hi, I am a newb here, taking an OS class. This is my first time messing with Linux at all. So far I have installed Ubuntu, compiled the Linux Kernel 18.104.22.168 a couple times to get setting right for my computer, and just figured out how modulations work (write the code, get functions from the kernel, plug it in, pull it out, check the log, etc.). It's actually been a lot more interesting and exciting than I thought it was going to be, but, anyway, I have a project due next week!
I have to design a system call that counts the number of times write() is invoked in a given time interval (seconds). Apparently in the newest version of kernel write() has been removed (or changed, I don't know), but the TA helped me bring the write() function back. Anyway, I am not really sure how to approach this now that I am actually getting close to writing it. I assume I want to get an input for how many seconds to measure, make a counter loop that does a counter++ each time it finds an occurrence of write() and when the time is up stop, and return the counter value.
So, how does the kernel handle time, i mean, if I get an input of say 8 seconds do tell the system look at the clock (12:00:00 and stop at 12:00:08 ) or how should this be handle. And how do I monitor the kernel for how many times it is performing the write() function? Thanks so much!