Re: A few terms I'd like to see in perfbook's Glossary

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, 20 Dec 2021 09:43:04 -0800, Paul E. McKenney wrote:
> On Mon, Dec 20, 2021 at 06:55:36PM +0900, Akira Yokosawa wrote:
>> Hi Paul,
>>
>> While reading through Section 9.5.4, I noticed a few terms
>> I'd like to see in perfbook's Glossary.
>>
>>  - Reference Counter/Counting
>>  - Existence Guarantee
>>  - Type-safe Memory
>>
>> "Reference counter" is already mentioned in a couple of existing
>> items in the glossary.
>>
>> "Existing guarantee" might be obvious enough and not worthy
>> to be in the glossary.
>>
>> Thoughts?
>>
>> There were only a few minor nits in the section.
>> Will post a patch taking care of them.
> 
> Thank you for looking it over!  Please see below for a proposed patch
> to the glossary.  Oh, and thank you for the checking utilities, very
> nice to get explicit messages rather than subtlely broken formatting!!!
> 
> utilities/punctcheck.sh
> ./glossary.tex:547:     Type-safe memory\cite{Cheriton96a} is provided by a
> utilities/cleverefcheck.sh
> 
> 							Thanx, Paul
> 
> ------------------------------------------------------------------------
> 
> commit a8f5948a1b8921941bf4039e278aa7929f64c322
> Author: Paul E. McKenney <paulmck@xxxxxxxxxx>
> Date:   Mon Dec 20 09:41:55 2021 -0800
> 
>     glossary: Add reference count, existence guarantee, and TSM
>     
>     Where "TSM" is type-safe memory.
>     
>     Reported-by: Akira Yokosawa <akiyks@xxxxxxxxx>
>     Signed-off-by: Paul E. McKenney <paulmck@xxxxxxxxxx>
> 
> diff --git a/glossary.tex b/glossary.tex
> index be10f703..31c09232 100644
> --- a/glossary.tex
> +++ b/glossary.tex
> @@ -199,6 +199,14 @@
>  	increase the overall cost of the computation, resulting in
>  	linear speedups as threads are added (assuming sufficient
>  	CPUs are available).
> +\item[\IX{Existence Guarantee}:]
> +	An existence guarantee is provided by a synchronization mechanism
> +	that prevents a given dynamically allocated object from being
> +	freed for the duration of that guarantee.
> +	For example, RCU provides existence guarantees for the duration
> +	of RCU read-side critical sections.
> +	A similar but strictly weaker guarantee is provided by
> +	type-safe memory.
>  \item[\IXh{Exclusive}{Lock}:]
>  	An exclusive lock is a mutual-exclusion mechanism that
>  	permits only one thread at a time into the
> @@ -469,6 +477,11 @@
>  	A situation in which getting the correct result is not sufficient,
>  	but where this result must also be obtained within a given amount
>  	of time.
> +\item[\IX{Reference Count}:]
> +	A counter that tracks the number of users of a given object or
> +	entity.
> +	Reference counters provide existence guarantees and are sometimes
> +	used to implement garbage collectors.
>  \item[\IX{Scalability}:]
>  	A measure of how effectively a given system is able to utilize
>  	additional resources.
> @@ -531,6 +544,17 @@
>  	A synchronization mechanism that gathers groups of memory
>  	accesses so as to execute them atomically from the viewpoint
>  	of transactions on other CPUs or threads.
> +\item[\IX{Type-Safe Memory}:]
> +	Type-safe memory~\cite{Cheriton96a} is provided by a
> +	synchronization mechanism that prevents a given dynamically
> +	allocated object from changing to an incompatible type.
> +	Note that the object might well be freed and then reallocated, but
> +	the reallocated object is guaranteed to be of a compatible type.
> +	Within the Linux kernel, type-safe memory is provided within
> +	RCU read-side critical sections for memory allocated from slabs
> +	marked with the \co{SLAB_TYPESAFE_BY_RCU} flag.
> +	The strictly stronger existence guarantee also prevents freeing
> +	of the protected object.
>  \item[\IX{Unteachable}:]
>  	A topic, concept, method, or mechanism that the teacher does
>  	not understand well is therefore uncomfortable teaching.
> 

Looks good to me!

        Thanks, Akira



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux