On http://books.pharo.org/booklet-ConcurrentProgramming/
S.
-------------------------------------------- Stéphane Ducasse 03 59 35 87 52 Assistant: Julie Jonas FAX 03 59 57 78 50 TEL 03 59 35 86 16 S. Ducasse - Inria 40, avenue Halley, Parc Scientifique de la Haute Borne, Bât.A, Park Plaza Villeneuve d'Ascq 59650 France |
Administrator
|
Thanks! And thanks in general for your tireless documentation efforts. I know
it can be a lonely pursuit but is soooo important :) ----- Cheers, Sean -- Sent from: http://forum.world.st/Pharo-Smalltalk-Developers-f1294837.html
Cheers,
Sean |
> On 10 Feb 2020, at 18:28, Sean P. DeNigris <[hidden email]> wrote: > > Thanks! And thanks in general for your tireless documentation efforts. I know > it can be a lonely pursuit but is soooo important :) :) Just pay me in PRs :) Now working on the new Spec20 book. S. > > > > ----- > Cheers, > Sean > -- > Sent from: http://forum.world.st/Pharo-Smalltalk-Developers-f1294837.html > |
In reply to this post by Stéphane Ducasse
I have wanted a clean explanation of semaphores and process scheduling for a long time.
Thanks for this.
|
You are welcome.
This is really one of the few resources on the topic and at this level in the ecosystem. In the future I plan to learn and explain monitors because they are better than semaphores or mutexes but I have the learn about them before :).
|
In reply to this post by Stéphane Ducasse
Hi Stef, here's my review/feedback
In fig 1.1 there needs to be a back arrow from Executing to Runnable which is labelled "Preempted by a higher priority process" or similar. In the label for fig 1.2 the word "pending" should be replaced with "runnable". Page 8, section "Process Priorities" "At any time only one process is executed." should read "At any time only one process is executing." The line starting "Next table lists..." in the last paragraph on page 8 should read "The following table lists...". The section might want to state some thing like "there that the current implementation of the Pharo scheduler has process priorities from 1 to 100. Only some of these are named. But the programmer is free to use any priority within that range that they see fit." It would be good to include examples which did things like "forkAt: Processor userPriority + 1", etc. In the label for Fig 2.1 "ressources" should read "resources". But throughout that section I would word it that "processes need to share resources", but "the process is waiting to acquire the resource". So use the plural for the general case and the singular for the specific case. Sentences such as this: "P0 has finished to use the resources." should read "P0 has finished using the resource." In Section 2.1 Conclusion "Semaphores are the lower synchronisation mechanisms." should read "Semaphores are the lowest level synchronisation mechanisms." Chapter 3, "Scheduler's Principles" should state that "The Smalltalk scheduler is a real-time, cooperative, preemptive across priorities, non-preemptive within priorities, scheduler." The title to Chapter 4.5 "ShareQueue: a nice semaphore example" should read "SharedQueue: a nice semaphore example" Most of the paragraphs on page 49 in section 4.5 are still in French and need translating.
_,,,^..^,,,_ best, Eliot |
In reply to this post by Stéphane Ducasse
I took into account all the feedback and produced a new version
available at http://books.pharo.org/booklet-ConcurrentProgramming/. Tx
-------------------------------------------- Stéphane Ducasse 03 59 35 87 52 Assistant: Julie Jonas FAX 03 59 57 78 50 TEL 03 59 35 86 16 S. Ducasse - Inria 40, avenue Halley, Parc Scientifique de la Haute Borne, Bât.A, Park Plaza Villeneuve d'Ascq 59650 France |
Free forum by Nabble | Edit this page |