[chromium-dev] Re: Chromium / Google Summer of Code

2009-08-24 Thread Mike Pinkerton

I'll let Paul Wicks chime in on his own experience, but we've been
able to successfully integrate the Mac OS X spell checker with the
Chromium infrastructure, including introducing platform support for a
spelling window. Paul is also in the process of adding OCMock to our
build, which we desperately need for many of our unit tests.

I'd say it was a smashing success!

On Sun, Aug 23, 2009 at 11:05 AM, Joel Stanleyj...@jms.id.au wrote:

 On Sat, Aug 22, 2009 at 07:31, Lei Zhangthes...@chromium.org wrote:

 With the Google Summer of Code program winding down, I'm curious how
 our GSoC participants are doing. Can the students and their mentors
 share their experiences? (Assuming you're all done with evaluations
 and all that.)

 My project was 'Forging a better Cr on Linux', and Dean was my mentor.

 I had an eye on doing performance/memory usage work motivated by my
 attempts to run Chromium on the Beagleboard; an ARM system with 128MB
 of RAM.  Chromium works and you can come along to OSDC
 (http://2009.osdc.com.au) for my talk There's something on my ARM
 for all the details :)

 I didn't get as much done as I would have liked as I was attending
 classes and sitting exams throughout my Summer of Code, a downside
 of being a student from the southern hemisphere.  This means I'm going
 to stick around the project to continue working on things I'm
 interested in.

 (For my record as much as anyone else) here is a summary of the
 patches I wrote, in chronological order:

 == Scale backing store cache size ==
 This would scale the number of DIBs stored based on the system RAM.
 It's since been replaced by a more complex algorithm.

 == Set process name on Linux ==
 This was to help distinguish the renderer from the browser (and the
 zygote, which was just appearing at the time).  It was reverted as it
 broke the UI tests which iterate over the process name.  I did not
 resubmit as 'ps f' provides the same information for less lines of
 code.

 == Jankfs ==
 An idea Dean had; write a FUSE filesystem to simluate slow and
 unreliable storage.  See
 http://groups.google.com/group/chromium-dev/browse_thread/thread/59b0440255c87ed3

 == ARM build ==
 The tree had built for ARM at some point in the past but had since
 bitrotted.  I went through building a toolchain, and then a root
 filesystem, and found 3 gcc ICE (internal compiler errors) on the way.
  I then made a bunch of changes in working towards building and
 running Chromium on the Beagleboard:

  * Hide x86 assembly in the seccomp and chroot sandboxes from the ARM build
  * A Skia build fix
  * v8 patch for targeting the ARMv7 Cortex-A8 (found on the beagleboard)
  * Most significantly, re-wrote v8.gyp to make cross-compiling possible

 For instructions on building see
 http://code.google.com/p/chromium/wiki/LinuxChromiumArm

 == Memory usage in task manager on Linux ==
 Calculates the memory usage of each process.  This is committed and
 working, but the API needs to be re-worked to be less Windows-like
 before about:memory is ready for Linux.  See
 http://codereview.chromium.org/159777

 == Fix proxy settings for Gnome =2.26 ==
 Newer versions of Gnome use a different binary name, this made the
 Change proxy settings button work for both.

 == Add ctrl+w accelerator to close bookmark manager for linux ==

 == Fix PR_ImplodeTime for Linux x64 ==
 This was one of the last patches to make the chrome tree compile for
 x64 without patches, building on Dean's work.  Beware the 2038 bug.

 == One liners ==
  * gcc-4.3 / 4.4 build fixes
  * gitignore updates
  * window icons

 According to the logs I wrote 22 patches.

 Despite having been around open source projects for a number of years,
 Chroimum's development process taught me many new things.  Having code
 review for all changes made was a new to me, and line by line review
 is great at ensuring I got detailed feedback.

 Dean's mentoring was the most valuable part of the experience. He was
 great at answering questions and explaining the concepts I was not
 familiar with.  Having the ability to communicate via IM made this
 very easy and I would encourage mentors and students to follow this
 setup in future years.

 Thanks to Dean for mentoring me, and everyone else who reviewed and
 committed my patches.

 Cheers,

 Joel

 




-- 
Mike Pinkerton
Mac Weenie
pinker...@google.com

--~--~-~--~~~---~--~~
Chromium Developers mailing list: chromium-dev@googlegroups.com 
View archives, change email options, or unsubscribe: 
http://groups.google.com/group/chromium-dev
-~--~~~~--~~--~--~---



[chromium-dev] Re: Chromium / Google Summer of Code

2009-08-23 Thread Joel Stanley

On Sat, Aug 22, 2009 at 07:31, Lei Zhangthes...@chromium.org wrote:

 With the Google Summer of Code program winding down, I'm curious how
 our GSoC participants are doing. Can the students and their mentors
 share their experiences? (Assuming you're all done with evaluations
 and all that.)

My project was 'Forging a better Cr on Linux', and Dean was my mentor.

I had an eye on doing performance/memory usage work motivated by my
attempts to run Chromium on the Beagleboard; an ARM system with 128MB
of RAM.  Chromium works and you can come along to OSDC
(http://2009.osdc.com.au) for my talk There's something on my ARM
for all the details :)

I didn't get as much done as I would have liked as I was attending
classes and sitting exams throughout my Summer of Code, a downside
of being a student from the southern hemisphere.  This means I'm going
to stick around the project to continue working on things I'm
interested in.

(For my record as much as anyone else) here is a summary of the
patches I wrote, in chronological order:

== Scale backing store cache size ==
This would scale the number of DIBs stored based on the system RAM.
It's since been replaced by a more complex algorithm.

== Set process name on Linux ==
This was to help distinguish the renderer from the browser (and the
zygote, which was just appearing at the time).  It was reverted as it
broke the UI tests which iterate over the process name.  I did not
resubmit as 'ps f' provides the same information for less lines of
code.

== Jankfs ==
An idea Dean had; write a FUSE filesystem to simluate slow and
unreliable storage.  See
http://groups.google.com/group/chromium-dev/browse_thread/thread/59b0440255c87ed3

== ARM build ==
The tree had built for ARM at some point in the past but had since
bitrotted.  I went through building a toolchain, and then a root
filesystem, and found 3 gcc ICE (internal compiler errors) on the way.
 I then made a bunch of changes in working towards building and
running Chromium on the Beagleboard:

  * Hide x86 assembly in the seccomp and chroot sandboxes from the ARM build
  * A Skia build fix
  * v8 patch for targeting the ARMv7 Cortex-A8 (found on the beagleboard)
  * Most significantly, re-wrote v8.gyp to make cross-compiling possible

For instructions on building see
http://code.google.com/p/chromium/wiki/LinuxChromiumArm

== Memory usage in task manager on Linux ==
Calculates the memory usage of each process.  This is committed and
working, but the API needs to be re-worked to be less Windows-like
before about:memory is ready for Linux.  See
http://codereview.chromium.org/159777

== Fix proxy settings for Gnome =2.26 ==
Newer versions of Gnome use a different binary name, this made the
Change proxy settings button work for both.

== Add ctrl+w accelerator to close bookmark manager for linux ==

== Fix PR_ImplodeTime for Linux x64 ==
This was one of the last patches to make the chrome tree compile for
x64 without patches, building on Dean's work.  Beware the 2038 bug.

== One liners ==
  * gcc-4.3 / 4.4 build fixes
  * gitignore updates
  * window icons

According to the logs I wrote 22 patches.

Despite having been around open source projects for a number of years,
Chroimum's development process taught me many new things.  Having code
review for all changes made was a new to me, and line by line review
is great at ensuring I got detailed feedback.

Dean's mentoring was the most valuable part of the experience. He was
great at answering questions and explaining the concepts I was not
familiar with.  Having the ability to communicate via IM made this
very easy and I would encourage mentors and students to follow this
setup in future years.

Thanks to Dean for mentoring me, and everyone else who reviewed and
committed my patches.

Cheers,

Joel

--~--~-~--~~~---~--~~
Chromium Developers mailing list: chromium-dev@googlegroups.com 
View archives, change email options, or unsubscribe: 
http://groups.google.com/group/chromium-dev
-~--~~~~--~~--~--~---