They call it memory Management...
Submitted by Ainars Galvans on Tue, 12/06/2007 - 11:48.
non-functional testing | performance testing | perspectives
Some time ago I wrote about careless server CPU usage becoming an engineering practice. I want to continue with memory usage this time. Stateless servers (stateless EJB), state saving on user host (ASP .NET __ViewState) – those are the tools replacing intelligent memory usage policy. Given AJAX application movement I don’t think they are to survive.
Note: I decided to start writing something that I will call essays rather than “articles”. I have described reasons at the end of this blog.
The essay
Following is an imaginary conversation at a bar between an imaginary employee and his boss.
Me: I want to be a piece of RAM. I would only get one clear instruction at a time. And never get to do more than I am capable of – you would buy more RAM as you need.
Boss: Then I would like t a computer program allocating memory. I would be able to request any more memory space, as I need it.
Me: But you need to make sure to free that memory.
Boss: I would then want to be a JAVA program so that garbage collector does the work for me.
Me: Then I would love to be the piece of memory with a huge heap size. Imagine – when my task will be doe I could drink a beer for weeks and observe how the garbage collector seldom runs into the Bar to get a few most drunken employees back to work...
John from HRM a problem: no salary. The only payment is purchasing. Perhaps You would be slaves...
Further reading/considering
There are also a lot of hints on specific things like JAVA and MS Windows that may be useful for a performance tester.
There are great overall books like this one . Yes - there are quite a theory and algorithms behind memory management. And they are still improving.
Computer Memory Management only
in its simpler forms are limited to allocating pieces of memory and freeing them as no longer needed. More advanced features include concepts of virtual memory and it’s swapping, garbage collection etc. As far as I know there are also protection mechanisms in new OS that does not allow process to access memory it is not supposed to (not allocated).
Let’s take a look at definition of a term MANAGEMENT
and replace “a large group of people” with “computer memory”. It probably makes some sense. I’m sure however that you can’t compare complexity of two processes: managing project run by people and managing piece of hardware. People management is sapient, empirical process and you can’t hope to have an algorithm that will compete with any human if he is not the best manager in the world.
Endnote: why essay? Open for misinterpretation.
When I just started blogging I wrote my first essay. But discontinued that practice. Recently I’ve been told that my English cause a lot of misinterpretations. Yes I know I have poor and even somewhat wrong vocabulary. Sentence constructions are also sometimes weird. Nevertheless I see even people with English as first or even only language struggling to define terms or reinvent them a lot. For example look at redefining manual testing into sapient one. Or discussing term of agility , etc.
More over after some conversation I figured out following: when I’m up to some idea and describe that idea into an article or blog I provide all the reasoning to convince that my idea is reasonable. However that is no always the reasoning that I had when came to that idea. I will write essay as it gives me a freedom to only write an idea without reasoning. I welcome everyone to find their own reasoning for or against it. I welcome any misinterpretation of my ideas... if only that help you learn or discover something worth
Note: I decided to start writing something that I will call essays rather than “articles”. I have described reasons at the end of this blog.
The essay
Following is an imaginary conversation at a bar between an imaginary employee and his boss.
Me: I want to be a piece of RAM. I would only get one clear instruction at a time. And never get to do more than I am capable of – you would buy more RAM as you need.
Boss: Then I would like t a computer program allocating memory. I would be able to request any more memory space, as I need it.
Me: But you need to make sure to free that memory.
Boss: I would then want to be a JAVA program so that garbage collector does the work for me.
Me: Then I would love to be the piece of memory with a huge heap size. Imagine – when my task will be doe I could drink a beer for weeks and observe how the garbage collector seldom runs into the Bar to get a few most drunken employees back to work...
John from HRM a problem: no salary. The only payment is purchasing. Perhaps You would be slaves...
Further reading/considering
There are also a lot of hints on specific things like JAVA and MS Windows that may be useful for a performance tester.
There are great overall books like this one . Yes - there are quite a theory and algorithms behind memory management. And they are still improving.
Computer Memory Management only
in its simpler forms are limited to allocating pieces of memory and freeing them as no longer needed. More advanced features include concepts of virtual memory and it’s swapping, garbage collection etc. As far as I know there are also protection mechanisms in new OS that does not allow process to access memory it is not supposed to (not allocated).
Let’s take a look at definition of a term MANAGEMENT
and replace “a large group of people” with “computer memory”. It probably makes some sense. I’m sure however that you can’t compare complexity of two processes: managing project run by people and managing piece of hardware. People management is sapient, empirical process and you can’t hope to have an algorithm that will compete with any human if he is not the best manager in the world.
Endnote: why essay? Open for misinterpretation.
When I just started blogging I wrote my first essay. But discontinued that practice. Recently I’ve been told that my English cause a lot of misinterpretations. Yes I know I have poor and even somewhat wrong vocabulary. Sentence constructions are also sometimes weird. Nevertheless I see even people with English as first or even only language struggling to define terms or reinvent them a lot. For example look at redefining manual testing into sapient one. Or discussing term of agility , etc.
More over after some conversation I figured out following: when I’m up to some idea and describe that idea into an article or blog I provide all the reasoning to convince that my idea is reasonable. However that is no always the reasoning that I had when came to that idea. I will write essay as it gives me a freedom to only write an idea without reasoning. I welcome everyone to find their own reasoning for or against it. I welcome any misinterpretation of my ideas... if only that help you learn or discover something worth
