Quellcodebibliothek Statistik Leitseite products/sources/formale Sprachen/C/Firefox/nsprpub/pr/src/md/unix/   (Browser von der Mozilla Stiftung Version 136.0.1©)  Datei vom 10.2.2025 mit Größe 1 kB image not shown  

Quelle  linux.c   Sprache: C

 
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */


#include "primpl.h"

void _MD_EarlyInit(void) {}

PRWord* _MD_HomeGCRegisters(PRThread* t, int isCurrent, int* np) {
#ifndef _PR_PTHREADS
  if (isCurrent) {
    (void)setjmp(CONTEXT(t));
  }
  *np = sizeof(CONTEXT(t)) / sizeof(PRWord);
  return (PRWord*)CONTEXT(t);
#else
  *np = 0;
  return NULL;
#endif
}

#ifdef _PR_PTHREADS

extern void _MD_unix_terminate_waitpid_daemon(void);

void _MD_CleanupBeforeExit(void) { _MD_unix_terminate_waitpid_daemon(); }

#else  /* ! _PR_PTHREADS */

void _MD_SET_PRIORITY(_MDThread* thread, PRUintn newPri) { return; }

PRStatus _MD_InitializeThread(PRThread* thread) {
  /*
   * set the pointers to the stack-pointer and frame-pointer words in the
   * context structure; this is for debugging use.
   */

  thread->md.sp = _MD_GET_SP_PTR(thread);
  thread->md.fp = _MD_GET_FP_PTR(thread);
  return PR_SUCCESS;
}

PRStatus _MD_WAIT(PRThread* thread, PRIntervalTime ticks) {
  PR_ASSERT(!(thread->flags & _PR_GLOBAL_SCOPE));
  _PR_MD_SWITCH_CONTEXT(thread);
  return PR_SUCCESS;
}

PRStatus _MD_WAKEUP_WAITER(PRThread* thread) {
  if (thread) {
    PR_ASSERT(!(thread->flags & _PR_GLOBAL_SCOPE));
  }
  return PR_SUCCESS;
}

/* These functions should not be called for Linux */
void _MD_YIELD(void) {
  PR_NOT_REACHED("_MD_YIELD should not be called for Linux.");
}

PRStatus _MD_CREATE_THREAD(PRThread* thread, void (*start)(void*),
                           PRThreadPriority priority, PRThreadScope scope,
                           PRThreadState state, PRUint32 stackSize) {
  PR_NOT_REACHED("_MD_CREATE_THREAD should not be called for Linux.");
  return PR_FAILURE;
}
#endif /* ! _PR_PTHREADS */

Messung V0.5
C=95 H=91 G=92

¤ Dauer der Verarbeitung: 0.10 Sekunden  (vorverarbeitet)  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.