An Entity of Type: Inflection113803782, from Named Graph: http://dbpedia.org, within Data Space: dbpedia.org:8891

Dangling pointers and wild pointers in computer programming are pointers that do not point to a valid object of the appropriate type. These are special cases of memory safety violations. More generally, dangling references and wild references are references that do not resolve to a valid destination.

Property Value
dbo:abstract
  • المؤشر المتدلي أو المؤشر المتوحش في برمجة الحاسوب هو مؤشر لا يشير إلى كائن صالح. ويعد ذلك حالة من حالات خروقات أمن الذاكرة. تنشأ المؤشرات المتدلية عند تدمير الكائنات، عندما يُحذف كائن له مراجع تصل له أو يزاح مكانه من الذاكرة، من دون تغيير قيمة المؤشر، ما يجعله يشير إلى موقع الذاكرة الذي كان به الكائن المدمر. يمكن أن يخصص النظام مساحة الذاكرة التي أخليت، وإذا اتُبع المؤشر الذي أصبح متدليًا، يمكن أن ينتج عن ذلك سلوك غير متوقع، إذ يمكن أن تحتوي مساحة الذاكرة في هذا التوقيت بيانات مختلفة تمامًا. وإذا حاول برنامج الكتابة في مساحة من الذاكرة باستخدام مؤشر متدل، يمكن أن يحدث إفساد للبيانات لا يُكشف بسهولة، وهو ما يؤدي إلى أخطاء في عمل البرنامج يكون من الصعب تحديد أسبابها. إذا أعيد تخصيص مساحة الذاكرة لعملية أخرى، فإن اتباع المؤشر المتدلي سيقود إلى أخطاء تجزئة (بحسب مصطلحات يونكس، لينكس) أو أخطاء حماية عامة (في نظام لويندوز). وإذا كان البرنامج لديه صلاحيات كافية تسمح له بتغيير بيانات التتبع التي يستخدمها مخصص الذاكرة في نواة نظام التشغيل، فمن المحتمل أن يؤدي ذلك إلى عدم استقرار بالنظام. في لغات البرمجة كائنية التوجه التي تتضمن جامعات قمامة، يُمنع تحول المؤشرات إلى مؤشرات متدلية عن طريق تدمير الكائنات التي لا تشير إليها مؤشرات فقط؛ ويكون ذلك باستخدام التتبع أو عد المراجع. المؤشر المتوحش هو وصف للمؤشر الذي يستخدم قبل إعطائه قيمة ابتدائية صالحة. وهو يؤدي إلى بعض السلوك غير المطلوب في البرنامج، إلا أنه يقل احتمال بقائه غير مكتشف لأن الكثير من المجمعات ستعطي تحذيرات في وقت التجميع إذا كان المؤشر المصرح به قد استخدم قبل إعطائه قيمة ابتدائية. ومثال على ذلك مجموعة مترجمات جنو. (ar)
  • Ein hängender Zeiger (englisch dangling pointer) bezeichnet in der Informatik einen Zeiger, der einen ungültigen Wert enthält und dadurch auf einen nicht vorhandenen oder nicht dem Zeiger zugeordneten dynamischen Speicherbereich (auch Heap genannt) verweist. (de)
  • Dangling pointers and wild pointers in computer programming are pointers that do not point to a valid object of the appropriate type. These are special cases of memory safety violations. More generally, dangling references and wild references are references that do not resolve to a valid destination. Dangling pointers arise during object destruction, when an object that has an incoming reference is deleted or deallocated, without modifying the value of the pointer, so that the pointer still points to the memory location of the deallocated memory. The system may reallocate the previously freed memory, and if the program then dereferences the (now) dangling pointer, unpredictable behavior may result, as the memory may now contain completely different data. If the program writes to memory referenced by a dangling pointer, a silent corruption of unrelated data may result, leading to subtle bugs that can be extremely difficult to find. If the memory has been reallocated to another process, then attempting to dereference the dangling pointer can cause segmentation faults (UNIX, Linux) or general protection faults (Windows). If the program has sufficient privileges to allow it to overwrite the bookkeeping data used by the kernel's memory allocator, the corruption can cause system instabilities. In object-oriented languages with garbage collection, dangling references are prevented by only destroying objects that are unreachable, meaning they do not have any incoming pointers; this is ensured either by tracing or reference counting. However, a finalizer may create new references to an object, requiring object resurrection to prevent a dangling reference. Wild pointers arise when a pointer is used prior to initialization to some known state, which is possible in some programming languages. They show the same erratic behavior as dangling pointers, though they are less likely to stay undetected because many compilers will raise a warning at compile time if declared variables are accessed before being initialized. (en)
  • En programación, si una estructura en el heap (lugar de donde se asigna memoria) es destruida antes de que todas las referencias (los apuntadores) a la misma sean destruidas, cualquier referencia restante se llama referencia colgante (Dangling Reference). Lenguajes como C detectan en tiempo de ejecución estas referencias y anuncian un error. Existen métodos para detectar estas referencias implementando un o un en los lenguajes de programación que usan recolectores de basura. (es)
  • Dangling pointer (traduction littérale : « pointeur pendouillant » ou « pointeur sautillant ») est un terme anglais de programmation informatique désignant un pointeur qui ne pointe pas vers un type d'objet approprié. Les Dangling pointers sont créés lors de la destruction de l'objet. (fr)
  • 허상 포인터(Dangling pointer) 그리고 와일드 포인터(wild pointers)는 컴퓨터 프로그래밍에서 적절한 타입의 유효한 객체를 가리키고 있지 않는 포인터를 말한다. 이것들은 메모리 보안 위반의 특별한 경우들이다. 일반적으로 허상 포인터는 인터넷의 죽은 링크 (link rot) 형상들처럼 유효하지 않은 목적지 주소에 대한 참조이다. 허상 포인터는 객체 파괴시에 발생하는데, 즉 객체에 대한 참조가 포인터 값에 대한 수정 없이 삭제되거나 할당 해제돼서 포인터가 계속 할당 해제된 메모리를 가리킬 때이다. 시스템은 할당 해제된 메모리를 다른 프로세스에게 재할당하겠지만, 기존 프로그램이 허상 포인터를 하면 메모리는 현재 전혀 다른 데이터를 갖고 있을 것이므로 예측할 수 없는 행동이 발생한다. 특히 프로그램이 허상 포인터가 가리키는 메모리에 쓰기를 하면, 관련되지 않은 데이터의 조용한 오염이 발생하게 되고, 이것은 찾기가 매우 힘들어진다. 참고로 리눅스, 유닉스의 경우에는 세그멘테이션 오류가, 윈도우의 경우에는 (general protection fault)가 발생한다. 만약 이 겹쳐써진 데이터가 시스템의 메모리 할당자가 사용하는 북키핑 데이터라면, 이 오염은 시스템을 불안정하게 만들 수 있다. 객체 지향 프로그래밍의 경우 쓰레기 수집으로 허상 참조들은 참조되지 않는 객체를 파괴함으로써 예방된다. 이것은 추적이나 참조 횟수 계산 방식에 의해 보증된다. 그러나 파이널라이저(finalizer)는 허상 잠조를 예방하기 위하여 객체 재생을 요구하면서, 객체에 대한 새로운 참조를 생성할 수 있다. 와일드 포인터들은 포인터가 알려진 상태로 초기화되기 전에 사용될 때 발생한다. 이것들은 허상 포인터와 같은 오류적인 행동들을 보이지만, 탐지되기가 쉽다는 차이점이 있다. (ko)
  • Un dangling pointer, o puntatore pendente, nei linguaggi di programmazione, indica un puntatore che si riferisce ad un'area di memoria non più valida, perché già liberata o perché il puntatore viene utilizzato all'esterno del contesto di esistenza della variabile cui si riferisce.Poiché il sistema operativo può riassegnare e riutilizzare quella data locazione di memoria, l'utilizzo di un dangling pointer porta effetti impredicibili, che vanno dall'errore di segmentazione (sistemi UNIX) o (sistemi Windows), con conseguente terminazione dell'applicazione che ha causato l'errore, alla corruzione di dati in memoria. (it)
  • Apontador (ou ponteiro) pendente, solto ou selvagem é um ponteiro que não aponta para um objeto/endereço de memória válido. (pt)
  • Завислі вказівники, дикі вказівники (англ. dangling pointers, wild pointers) у програмуванні — вказівники, що не вказують на допустимий об'єкт відповідного типу. Це спеціальні випадки порушення безпеки пам'яті. Завислі вказівники виникають тоді, коли об'єкт видалено або переміщено без зміни значення вказівника на нульове, так що вказівник все ще вказує на область пам'яті непереміщених даних. Оскільки система може перерозподілити раніше звільнену пам'ять (у тому числі в інший процес), то обірваний вказівник може призвести до непередбачуваної поведінки програми. У випадку, коли програма записує дані у пам'ять, використовуючи такий вказівник, дані можуть непомітно руйнуватися, що призводить до тонких помилок, які надзвичайно важко знайти. Дикі вказівники виникають, коли вказівник використовується до ініціалізації у відомий стан, що можливо в деяких мовах програмування. Вони такі ж непередбачувані як висячі, проте вони мають менше шансів залишитися непоміченими. Цей вид помилок є дуже небезпечним і поруч з витоками пам'яті трапляється досить часто. Ряд мов програмування знижують вірогідність появи висячих вказівників, використовуючи автоматичне збирання сміття та інші методи, цим самим підвищуючи безпеку доступу до пам'яті. (uk)
  • Висячий указатель или висячая ссылка (англ. Dangling pointer, wild pointer, dangling reference) — указатель, не указывающий на допустимый объект соответствующего типа. Это особый случай нарушения безопасности памяти. Висячие указатели возникают тогда, когда объект удалён или перемещён без изменения значения указателя на нулевое, так что указатель все ещё указывает на область памяти, где ранее хранились данные. Поскольку система может перераспределить ранее освобождённую память (в том числе в другой процесс), то оборванный указатель может привести к непредсказуемому поведению программы. В случае, когда программа записывает данные в память, используя такой указатель, данные могут незаметно разрушаться, что приводит к тонким ошибкам, которые очень трудно найти. Этот вид ошибок очень опасен, и наряду с утечками памяти случается довольно часто. Ряд языков снижают вероятность появления висячих указателей, в частности, используя автоматическую сборку мусора или иными методами, повышая безопасность доступа к памяти. (ru)
  • 在计算机编程领域中,迷途指针,或称悬空指针、野指针,指的是不指向任何合法的对象的指针。 当所指向的对象被释放或者收回,但是对该指针没有作任何的修改,以至于该指针仍旧指向已经回收的内存地址,此情况下该指针便称迷途指针。若操作系统将这部分已经释放的内存重新分配给另外一个进程,而原来的程序重新引用现在的迷途指针,则将产生无法预料的后果。因为此时迷途指针所指向的内存现在包含的已经完全是不同的数据。通常来说,若原来的程序继续往迷途指针所指向的内存地址写入数据,这些和原来程序不相关的数据将被损坏,进而导致不可预料的程序错误。这种类型的程序错误,不容易找到问题的原因,通常会导致記憶體區段錯誤(Linux系统中)和一般保护错误(Windows系统中)。如果操作系统的内存分配器将已经被覆盖的数据区域再分配,就可能会影响系统的稳定性。 某些编程语言允许未初始化的指针的存在,而这类指针即为野指针。野指针所导致的错误和迷途指针非常相似,但野指针的问题更容易被发现。 (zh)
dbo:wikiPageExternalLink
dbo:wikiPageID
  • 1119856 (xsd:integer)
dbo:wikiPageLength
  • 14251 (xsd:nonNegativeInteger)
dbo:wikiPageRevisionID
  • 1110121982 (xsd:integer)
dbo:wikiPageWikiLink
dbp:wikiPageUsesTemplate
dcterms:subject
gold:hypernym
rdf:type
rdfs:comment
  • Ein hängender Zeiger (englisch dangling pointer) bezeichnet in der Informatik einen Zeiger, der einen ungültigen Wert enthält und dadurch auf einen nicht vorhandenen oder nicht dem Zeiger zugeordneten dynamischen Speicherbereich (auch Heap genannt) verweist. (de)
  • En programación, si una estructura en el heap (lugar de donde se asigna memoria) es destruida antes de que todas las referencias (los apuntadores) a la misma sean destruidas, cualquier referencia restante se llama referencia colgante (Dangling Reference). Lenguajes como C detectan en tiempo de ejecución estas referencias y anuncian un error. Existen métodos para detectar estas referencias implementando un o un en los lenguajes de programación que usan recolectores de basura. (es)
  • Dangling pointer (traduction littérale : « pointeur pendouillant » ou « pointeur sautillant ») est un terme anglais de programmation informatique désignant un pointeur qui ne pointe pas vers un type d'objet approprié. Les Dangling pointers sont créés lors de la destruction de l'objet. (fr)
  • Un dangling pointer, o puntatore pendente, nei linguaggi di programmazione, indica un puntatore che si riferisce ad un'area di memoria non più valida, perché già liberata o perché il puntatore viene utilizzato all'esterno del contesto di esistenza della variabile cui si riferisce.Poiché il sistema operativo può riassegnare e riutilizzare quella data locazione di memoria, l'utilizzo di un dangling pointer porta effetti impredicibili, che vanno dall'errore di segmentazione (sistemi UNIX) o (sistemi Windows), con conseguente terminazione dell'applicazione che ha causato l'errore, alla corruzione di dati in memoria. (it)
  • Apontador (ou ponteiro) pendente, solto ou selvagem é um ponteiro que não aponta para um objeto/endereço de memória válido. (pt)
  • 在计算机编程领域中,迷途指针,或称悬空指针、野指针,指的是不指向任何合法的对象的指针。 当所指向的对象被释放或者收回,但是对该指针没有作任何的修改,以至于该指针仍旧指向已经回收的内存地址,此情况下该指针便称迷途指针。若操作系统将这部分已经释放的内存重新分配给另外一个进程,而原来的程序重新引用现在的迷途指针,则将产生无法预料的后果。因为此时迷途指针所指向的内存现在包含的已经完全是不同的数据。通常来说,若原来的程序继续往迷途指针所指向的内存地址写入数据,这些和原来程序不相关的数据将被损坏,进而导致不可预料的程序错误。这种类型的程序错误,不容易找到问题的原因,通常会导致記憶體區段錯誤(Linux系统中)和一般保护错误(Windows系统中)。如果操作系统的内存分配器将已经被覆盖的数据区域再分配,就可能会影响系统的稳定性。 某些编程语言允许未初始化的指针的存在,而这类指针即为野指针。野指针所导致的错误和迷途指针非常相似,但野指针的问题更容易被发现。 (zh)
  • المؤشر المتدلي أو المؤشر المتوحش في برمجة الحاسوب هو مؤشر لا يشير إلى كائن صالح. ويعد ذلك حالة من حالات خروقات أمن الذاكرة. تنشأ المؤشرات المتدلية عند تدمير الكائنات، عندما يُحذف كائن له مراجع تصل له أو يزاح مكانه من الذاكرة، من دون تغيير قيمة المؤشر، ما يجعله يشير إلى موقع الذاكرة الذي كان به الكائن المدمر. يمكن أن يخصص النظام مساحة الذاكرة التي أخليت، وإذا اتُبع المؤشر الذي أصبح متدليًا، يمكن أن ينتج عن ذلك سلوك غير متوقع، إذ يمكن أن تحتوي مساحة الذاكرة في هذا التوقيت بيانات مختلفة تمامًا. وإذا حاول برنامج الكتابة في مساحة من الذاكرة باستخدام مؤشر متدل، يمكن أن يحدث إفساد للبيانات لا يُكشف بسهولة، وهو ما يؤدي إلى أخطاء في عمل البرنامج يكون من الصعب تحديد أسبابها. إذا أعيد تخصيص مساحة الذاكرة لعملية أخرى، فإن اتباع المؤشر المتدلي سيقود إلى أخطاء تجزئة (بحسب مصطلحات يونكس، لينكس) أو أخطاء (ar)
  • Dangling pointers and wild pointers in computer programming are pointers that do not point to a valid object of the appropriate type. These are special cases of memory safety violations. More generally, dangling references and wild references are references that do not resolve to a valid destination. (en)
  • 허상 포인터(Dangling pointer) 그리고 와일드 포인터(wild pointers)는 컴퓨터 프로그래밍에서 적절한 타입의 유효한 객체를 가리키고 있지 않는 포인터를 말한다. 이것들은 메모리 보안 위반의 특별한 경우들이다. 일반적으로 허상 포인터는 인터넷의 죽은 링크 (link rot) 형상들처럼 유효하지 않은 목적지 주소에 대한 참조이다. 허상 포인터는 객체 파괴시에 발생하는데, 즉 객체에 대한 참조가 포인터 값에 대한 수정 없이 삭제되거나 할당 해제돼서 포인터가 계속 할당 해제된 메모리를 가리킬 때이다. 시스템은 할당 해제된 메모리를 다른 프로세스에게 재할당하겠지만, 기존 프로그램이 허상 포인터를 하면 메모리는 현재 전혀 다른 데이터를 갖고 있을 것이므로 예측할 수 없는 행동이 발생한다. 특히 프로그램이 허상 포인터가 가리키는 메모리에 쓰기를 하면, 관련되지 않은 데이터의 조용한 오염이 발생하게 되고, 이것은 찾기가 매우 힘들어진다. 참고로 리눅스, 유닉스의 경우에는 세그멘테이션 오류가, 윈도우의 경우에는 (general protection fault)가 발생한다. 만약 이 겹쳐써진 데이터가 시스템의 메모리 할당자가 사용하는 북키핑 데이터라면, 이 오염은 시스템을 불안정하게 만들 수 있다. 객체 지향 프로그래밍의 경우 쓰레기 수집으로 허상 참조들은 참조되지 않는 객체를 파괴함으로써 예방된다. 이것은 추적이나 참조 횟수 계산 방식에 의해 보증된다. 그러나 파이널라이저(finalizer)는 허상 잠조를 예방하기 위하여 객체 재생을 요구하면서, 객체에 대한 새로운 참조를 생성할 수 있다. (ko)
  • Висячий указатель или висячая ссылка (англ. Dangling pointer, wild pointer, dangling reference) — указатель, не указывающий на допустимый объект соответствующего типа. Это особый случай нарушения безопасности памяти. Этот вид ошибок очень опасен, и наряду с утечками памяти случается довольно часто. Ряд языков снижают вероятность появления висячих указателей, в частности, используя автоматическую сборку мусора или иными методами, повышая безопасность доступа к памяти. (ru)
  • Завислі вказівники, дикі вказівники (англ. dangling pointers, wild pointers) у програмуванні — вказівники, що не вказують на допустимий об'єкт відповідного типу. Це спеціальні випадки порушення безпеки пам'яті. Дикі вказівники виникають, коли вказівник використовується до ініціалізації у відомий стан, що можливо в деяких мовах програмування. Вони такі ж непередбачувані як висячі, проте вони мають менше шансів залишитися непоміченими. Цей вид помилок є дуже небезпечним і поруч з витоками пам'яті трапляється досить часто. (uk)
rdfs:label
  • مؤشر متدلي (ar)
  • Hängender Zeiger (de)
  • Referencia colgante (es)
  • Dangling pointer (en)
  • Dangling pointer (fr)
  • Dangling pointer (it)
  • 허상 포인터 (ko)
  • Apontador pendente (pt)
  • Висячий указатель (ru)
  • 迷途指针 (zh)
  • Висячі вказівники (uk)
owl:sameAs
prov:wasDerivedFrom
foaf:isPrimaryTopicOf
is dbo:wikiPageRedirects of
is dbo:wikiPageWikiLink of
is foaf:primaryTopic of
Powered by OpenLink Virtuoso    This material is Open Knowledge     W3C Semantic Web Technology     This material is Open Knowledge    Valid XHTML + RDFa
This content was extracted from Wikipedia and is licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License