Board.KolibriOS.org

Official KolibriOS board
It is currently Tue Jul 16, 2019 11:46 pm

All times are UTC+03:00




Post new topic  Reply to topic  [ 92 posts ]  Go to page 1 2 3 4 57 Next
Author Message
 Post subject: ext2
PostPosted: Thu Aug 08, 2013 6:14 pm 
Offline
KSoC/GSoC Student

Joined: Wed Jun 05, 2013 4:22 pm
Posts: 17
Hi!

Due to a series of unfortunate events, I haven't been able to follow the exact schedule I provided in the beginning, and have also postponed my one-month report by quite some time. This all is deeply regretted by me, and was totally unintended. Unfortunately, time once spent doesn't come back; however, one can always cope up. yogev_ezra offered me to give up this job; as far as I'm concerned, I'm still willing (and think I can make it), and will provide a schedule for the same. I saw people discussing how I haven't visited the forums in 5 days -- unfortunately, I live in India with a crappy internet connection (which I complained about at the starting of the job); don't fear about me running away (me having all the money gives probably cause, but really, it isn't), and you can always check if I'm just avoiding kolibri-os boards by seeing if I'm active on IRC or not.

Here is my -- currently -- mid-term report:

As for my current progress, I've finished requisite things like block allocation, deallocation; inode allocation, deallocation, and all sorts of funky things with inodes already (like, adding a block in the "blocks of inode" list). I've also added a unlink function, and all requisites for link are there. For actual visible "syscalls," you unfortunately only get Delete and a SetFileInfo. All other syscalls are coming up soon (see schedule described below). Note that this all wasn't just raw addition -- I refactored all previous code, added (legible) English comments, factored in the new disk-handling code originally written by CleverMouse, structured code...

I've put up all code on my FTP directory, including a patch. You should apply the patch -- but if you want, I've uploaded the ext2/ directory.

All in all, if I were putting up this report when I was destined to, it'd have been on-track. However, due to the delay, I'm a little off track. The way I plan to get back-on-track is:

  • By Monday, 12th August, I'd add Rewrite and CreateFolder.
  • By Sunday, 17th August, I'll add the Write syscall, and fill in all the tiny syscalls (stuff like SetFileEnd, which shouldn't be much pain).
  • Since ext3 and ext4 mainly add two things -- indexed directories, and extents -- I'll spend roughly two to two&half weeks on this addition.
  • I'll then factor in all small-yet-important changes in ext3 & ext4.
  • I'll by this time be refactoring stuff, etc.

I'm stopping providing text-based reports, since they don't have much value. Instead, I'll post here on my progress on the above schedule (*on* dates I've said), where the most minimal post I do can be "On schedule, code uploaded." I'll update the ftp with all the recent code, or maybe svn too, if allowed.

As of now, I'm willing to take as much criticism as possible. Bug reports, style issues, you put it all. I'll also listen at all criticism at the delay, but some things aren't exactly in one's hands...

With regards,
Shikhin


Top
   
 Post subject: Re: ext2
PostPosted: Thu Aug 08, 2013 7:30 pm 
Offline

Joined: Mon Sep 24, 2007 11:11 am
Posts: 2814
Hey, don't worry, keep up good mood and keep working :) We really need this!


Top
   
 Post subject: Re: ext2
PostPosted: Thu Aug 08, 2013 8:51 pm 
Offline
Kernel Developer

Joined: Sun Feb 10, 2013 12:37 pm
Posts: 2329
Shikhin
I'm glad you're back with some of the results. Yes, I agree that life is making some changes in our plans. I hope that you have successfully completed this great work. That's one small step for programmer, one giant leap for project. Poyekhali! (Let's Go!)

P.S. This was a reference to Neil Armstrong and Yuri Gagarin.

_________________
Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!


Top
   
 Post subject: Re: ext2
PostPosted: Thu Aug 08, 2013 10:30 pm 
Offline
Public Relations
User avatar

Joined: Mon Jun 07, 2010 12:01 pm
Posts: 1879
Shikhin wrote:
Due to a series of unfortunate events, I haven't been able to follow the exact schedule I provided in the beginning, and have also postponed my one-month report by quite some time. This all is deeply regretted by me, and was totally unintended. Unfortunately, time once spent doesn't come back; however, one can always cope up. yogev_ezra offered me to give up this job; as far as I'm concerned, I'm still willing (and think I can make it), and will provide a schedule for the same. I saw people discussing how I haven't visited the forums in 5 days -- unfortunately, I live in India with a crappy internet connection (which I complained about at the starting of the job); don't fear about me running away (me having all the money gives probably cause, but really, it isn't), and you can always check if I'm just avoiding kolibri-os boards by seeing if I'm active on IRC or not.

I'll just repost here what I've sent you in PM:
yogev_ezra wrote:
It's not a problem if you are late on schedule; it's completely fine if your code has bugs or isn't the perfect quality. In this project, first and foremost you are expected to learn how to interact with open-source community, not to produce perfect code (although that's a big bonus, of course!)

What is not good is when you completely disappear, so people start thinking that you've run away with the money, or that you don't intend to ever complete the project. All you need to do is to post regular weekly updates, even if the updates contain nothing but one sentence "I had no progress this week due to family circumstances". This way people see that you are still here.
Other than that, I wish you good luck in completing this project, and hope that only good things happen to you and your family in the future.


Top
   
 Post subject: Re: ext2
PostPosted: Wed Aug 14, 2013 2:28 pm 
Offline
KSoC/GSoC Student

Joined: Wed Jun 05, 2013 4:22 pm
Posts: 17
Hi,

I'm on schedule, but the current code has a couple of bugs (which I'll hunt down soon). The next update with code will most probably be on the 17th.

Regards,
Shikhin


Top
   
 Post subject: Re: ext2
PostPosted: Wed Aug 14, 2013 2:48 pm 
Offline

Joined: Mon Sep 24, 2007 11:11 am
Posts: 2814
I heard some rumors about "ext4 didn't working". Can it be fixed too?


Top
   
 Post subject:
PostPosted: Sat Aug 31, 2013 12:41 pm 
Offline
Public Relations
User avatar

Joined: Mon Jun 07, 2010 12:01 pm
Posts: 1879
Please post an update on your progress. "No progress was made since the last update" is ok; but no update is not ok.


Top
   
 Post subject: Re: ext2
PostPosted: Wed Sep 11, 2013 8:58 pm 
Offline
Public Relations
User avatar

Joined: Mon Jun 07, 2010 12:01 pm
Posts: 1879
A re-post from our PM conversation:
Shikhin wrote:
Hi,

I've mostly got my current report ready, but a couple of loose ends hanging. I hope to close them by tomorrow, and submit my report. I hope this is fine, and my current progress is all good? First job, want it all to go nice.

Regards,
Shikhin
Sent: Mon Aug 19, 2013 7:45 pm
yogev_ezra wrote:
This is not a real job yet - it's a summer student project to give you some experience. It would be OK even if you are late on schedule, and even if you have bugs. So don't worry about it too much - just post an update tomorrow with what you have tomorrow.
Sent: Mon Aug 19, 2013 7:50 pm
yogev_ezra wrote:
Can you please explain what is going on with you? You promised a report on August 19th, and disappeared again. I also still haven't received your mobile (or home) phone for direct communication with you in case I can't reach you in the forum.
Sent: Mon Sep 09, 2013 12:01 pm
Shikhin wrote:
Hi,

I'm sorry, I wouldn't want to put the blame to excuses, it's just that I over-estimated my ability to perform, given up all the schedules and stuff I've to follow, so I missed another report. Of course, as someone on the #kolibrios channel said, it's the end result that matters, and not the fact that I worked on something -- so I'm making sure that the end report is worth the effort. I can't afford to fail giving a proper report, this time.

With apologies & regards,
Shikhin

P.S. For communication, I think the best outlet is IRC, on which I'm available more often than not, and am always idling #kolibrios.
Sent: Mon Sep 09, 2013 1:21 pm
yogev_ezra wrote:
You are expected to write weekly updates on this forum. Even if no progress has been made, just write "No progress since last week". This would be fine, we understand that progress is not linear. But you are not writing ANYTHING, and this is really unacceptable (you need to update once a week and write a detailed report once a month).
Shikhin wrote:
P.S. For communication, I think the best outlet is IRC, on which I'm available more often than not, and am always idling #kolibrios.
No, it is not, because IRC is visited by hardly 3-4 members of KolibriOS team, while the forum is visited by everyone (including myself). Since I am the program administrator and I am the one who needs to give you feedback on communication with the project team, I request you login to the forum at least once a week and write at least one sentence in your EXT2 thread.
Shikhin wrote:
Of course, as someone on the #kolibrios channel said, it's the end result that matters, and not the fact that I worked on something -- so I'm making sure that the end report is worth the effort.
Let me emphasize again - this is a summer student project, not a job. If we wanted just the working code, we would probably hire a freelancer. The idea of this project is for students to learn how to communicate with open-source community, not how to write perfect code. By doing zero communication, you are missing the whole point of this project.
Sent: Mon Sep 09, 2013 1:31 pm
Shikhin wrote:
Hi,

I guess you're right. I was focusing too much on the "delivering code" fore-front, so I didn't think much about writing reports, communicating, and thus didn't put it to much priority. I saw it as an effort to improve KolibriOS -- while, you're right, it's an effort to improve myself.

While not much time is left, there's always time to improve. I'll, starting from today (night, to prepare myself a bit), post regular updates -- regardless of whether there was linear development or not.

Regards,
Shikhin
Sent: Tue Sep 10, 2013 5:22 pm


Top
   
 Post subject: Re: ext2
PostPosted: Thu Sep 12, 2013 5:20 pm 
Offline
KSoC/GSoC Student

Joined: Wed Jun 05, 2013 4:22 pm
Posts: 17
Hi,

I've uploaded my most recent diff; linking is coming near to a finish. I was about to rush it to an end today, but yogev_ezra informed me that my month long absence meant an additional month of work. That should be good, considering the fact that I just realized the importance of communication -- something I'll take much more seriously this time about.

On the forefront of communication, I noticed several things which I'd love to point out, something I've only documented in the code, as of now:

  • Structure. Since KolibriOS has a monolithic kernel, I do see some problems in all components fitting together. Roughly everything has been divided well, but it's better to not have too large a file containing one unit -- module, as I like to call them -- and split it all. That's the approach I followed with the ext2 code; rather than having a large file, I split it into the ext2/ directory. ext2.asm was sufficient to be included from the kernel, while ext2.inc contained defines for every component of the ext2 driver. I'd love to see more splitting up of such components across.
  • Naming. I can only talk about the ext2 driver, and the part that interfaced with it. I noticed that the naming wasn't always consistent, and sometimes, since I don't use an IDE or such, I'd forget some obscure function name. Now that I've talked about modules, the way I like to name my functions is: "<module>_<submodule>_<func-meat>". An example function would become ext2_inode_write. I haven't changed all the names yet to align with this, but I'd soon.
  • Miscellaneous components I found missing. I found several things to be lacking in, while coding. For example, I found no uniform "get_time" thingy, no uniform time-conversions (more on it, later) or string-conversions. I wouldn't document them all here, they are placed at the top of ext2.inc, with a "Please move this to appropriate region" comment, with appropriate region defined. I'd love to do that, once my KSoC is over.
  • Timing. Over to timing, I realized that you just use the CMOS. That's fairly inaccurate, considering the accuracy of the RTC. What most OSes are recommended to do is to get the time from the RTC at boot, and then use the PIT, or any local timer, to track time. You'd do that in some form of unix time, perhaps with higher precision, such that you'd be tracking milliseconds since "boot time secured from RTC." You could then, every X seconds, also update the RTC so it doesn't go way too wrong. The rest of the OS should use this time, and the OS should provide fair abstractions to convert it to <XYZ-format>.

I think that's it, but I might've missed something. I'm also pushing for English-only comments; English is a fairly standardised language for all projects, and Russian comments just puts me off in such a large project, IMHO.

Regards,
Shikhin


Top
   
 Post subject: Re: ext2
PostPosted: Thu Sep 12, 2013 7:26 pm 
Offline
Public Relations
User avatar

Joined: Mon Jun 07, 2010 12:01 pm
Posts: 1879
Thank you very much for the report - that's the way it should have been from the beginning, and this is the way it should be done from now on till the end of your project (October 17th as I mentioned to you on IRC).
Shikhin wrote:
I'm also pushing for English-only comments; English is a fairly standardised language for all projects, and Russian comments just puts me off in such a large project, IMHO.
I don't have any objection if the code you work on (ext2/3/4) has English-only comments.


Top
   
 Post subject: Re: ext2
PostPosted: Thu Sep 12, 2013 8:21 pm 
Offline
KSoC/GSoC Student

Joined: Wed Jun 05, 2013 4:22 pm
Posts: 17
Hi,

yogev_ezra wrote:
Thank you very much for the report - that's the way it should have been from the beginning, and this is the way it should be done from now on till the end of your project (October 17th as I mentioned to you on IRC).


Of course.

yogev_ezra wrote:
Shikhin wrote:
I'm also pushing for English-only comments; English is a fairly standardised language for all projects, and Russian comments just puts me off in such a large project, IMHO.
I don't have any objection if the code you work on (ext2/3/4) has English-only comments.


I'm not talking just about my code, but most of the project. I understand that some parts are worked on by programmers who speak only Russian, but the transition to English should prove worth it, especially in the long run.

Regards,
Shikhin


Top
   
 Post subject: Re: ext2
PostPosted: Tue Sep 17, 2013 2:17 pm 
Offline
KSoC/GSoC Student

Joined: Wed Jun 05, 2013 4:22 pm
Posts: 17
Hi,

I just posted the latest report, with somewhat detail, 3 days ago. However, it's the end of the month, so I thought I'd just pop in here and say that not much has been added since the last report, but the next (probably three days later, at 1 week's time from the last report) report should contain FULL link support.

Regards,
Shikhin


Top
   
 Post subject: Re: ext2
PostPosted: Tue Sep 17, 2013 2:45 pm 
Offline
Public Relations
User avatar

Joined: Mon Jun 07, 2010 12:01 pm
Posts: 1879
Shikhin wrote:
[...]However, it's the end of the month, so I thought I'd just pop in here and say that not much has been added since the last report[...]
Great, that's exactly the kind of updates I was requesting from the beginning. Good to see you finally got it :wink:


Top
   
 Post subject: Re: ext2
PostPosted: Tue Sep 24, 2013 3:17 pm 
Offline
KSoC/GSoC Student

Joined: Wed Jun 05, 2013 4:22 pm
Posts: 17
Hi,

Good to announce that linking is up and finished, in my 24.patch file. Now, I've got a query -- does ext2_Rewrite and ext2_CreateFolder need to "copy data from input buffer" too? sysfuncs.txt isn't too clear on this -- could somebody please address this ASAP?

Regards,
Shikhin

P.S. @yogev_ezra -- since my account had an influx of money from you, I was hoping I could get some sort of a statement saying "We gave $2250 to Shikhin Sethi, amounting to 130600INR, on <date-you-send-payment>, for the Summer of Code 2013" or something similar, so that I can avoid problems with the tax department?


Top
   
 Post subject: Re: ext2
PostPosted: Wed Sep 25, 2013 8:53 am 
Offline
KSoC/GSoC Student

Joined: Wed Jun 05, 2013 4:22 pm
Posts: 17
Hi,

Following my report from yesterday: I've put up 25.patch and 25.img. 25.img is the kolibri.img with the latest kernel build; note that CreateFolder now works too, so have fun with testing it. Rewrite should be easy to do now, but I think it requires Write too, so I'll do those together. I'd love all sort of code reviews, so do look at everything.

Regards,
Shikhin


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 92 posts ]  Go to page 1 2 3 4 57 Next

All times are UTC+03:00


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Limited