Dlaczego główna pamięć przydziału obiektów nazywa się „stertą”?


10

Czy ktoś ma pojęcie, dlaczego obszar pamięci głównej, w którym przydzielane są obiekty, jest nazywany stertą. Mogę zrozumieć uzasadnienie stosu LIFO, ale chciałbym wiedzieć, jakie jest uzasadnienie dla nazwy „sterty”.


2
Nie mam żadnej historii ani dowodów na poparcie tego, ale chciałbym postawić, że stos był pierwszy, a po angielsku kupa jest w zasadzie antytezą stosu, więc kiedy pojawiło się coś, co nie było stosem i nie miało gwarancji strukturalnych, kupa właśnie przyszła mi do głowy dla pewnej grupy ludzi i rozprzestrzenia się, jakby język miał tendencję do ...
Jimmy Hoffa

2
@ JimmyHoffa: Prawdopodobnie nie jesteś daleko. W dawnych czasach (dla mnie było to około 8086) stos i stos rosły w przeciwnych kierunkach ku sobie, stos wzrastał od dołu (koniec pamięci) do góry, a stos wzrastał od góry (początek pamięci użytkownika ) na dół.
Robert Harvey

4
@DeadMG: Właśnie dlatego mamy ten głos, aby zamknąć coś, a flagi moderatora, jeśli nie masz wystarczającej liczby przedstawicieli, aby głosować, aby zamknąć. W przeciwnym razie możesz dodać link do duplikatu tutaj w komentarzach. W każdym razie przeprowadziłem wyszukiwanie i nie znalazłem żadnych duplikatów.
Robert Harvey

1
Do ścisłego głosowania - To pytanie dotyczy jednego tematu. Aby uzyskać więcej informacji, zobacz to ostatnie pytanie Meta . Jak na ironię, to meta pytanie znalazło się w moim biuletynie społecznościowym dla tego pytania.

2
Dup nie jest dostępny na P.SE, ale raczej SO - stackoverflow.com/questions/660855/... i stackoverflow.com/questions/1699057/…

Odpowiedzi:


7

Z informacji znalezionych na StackOverflow - Jakie jest pochodzenie terminu „kupa” dla bezpłatnego sklepu? i dlaczego dwie różne koncepcje nazywane są „stertą”?

Informacje te pochodzą przynajmniej z Knuth w 1975 r., Odnosząc się do innych (nienazwanych) autorów:

Kilku autorów zaczęło około 1975 r. Nazywać pulę dostępnej pamięci „kupą”. Ale w obecnej serii książek użyjemy tego słowa tylko w bardziej tradycyjnym sensie związanym z kolejkami priorytetowymi. (The Art of Computer Programming - Fundamental Algorytmy, wyd. 3, s. 435)

Wspomniano także o dyskusji Wijngaarden na temat Algolu na początku lat 70. XX wieku, odnoszącej się do dostępnej puli pamięci jako sterty ( heapjest to słowo zastrzeżone w Algolu, które jest zdefiniowane miejscami jako „przydzielanie zmiennej pewnej wolnej przestrzeni z globalnej sterty”. - daty Algol68 od 1968).

Implementacja sterty ALGOL 68 z 1970 roku może być przydatna w śledzeniu niektórych aspektów pochodzenia słów, choć wiele, jeśli jest za zaporą.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.