Beiträge von Schakal

NetzUnity und Informatik-forum wurden zusammengelegt. Eine entsprechende Ankündigung wird demnächst noch folgen. Für 2025 ist hier einiges geplant! Bei Fragen bitte per DM an Maximilian Rupp wenden.

    Ich verwende TexLive, ein derartiges Problem ist mir noch nicht untergekommen. Ich habe, zugegebenermaßen, mit Latex noch kein 250 Seiten Dokument produziert. In ARX hatte ich haber schon Files mit > 1000 Seiten offen und die Suche funktionierte (wenn gleich auch langsam, no index).

    Vllt. verwendest du etwas, womit pdflatex Probleme hat oder es hält sich nicht ganz an den Standard?
    Am besten mal mit einer anderen Version(Update/Downgrade probieren ARX/miktex) oder Distro probieren.

    lg

    Da du ein sehr einfaches Gleichungssystem hast, ist der Gauß-Alg. ein Overkill, wenn nicht gefordert. Ich würde dir raten mit Rationalen Zahlen zu rechnen. Dann brauchst du aber eine eigene Klasse oder du machst dies nicht generisch im Code. Dann addierst einfach -kx1/kx2*(kx2*x+ky2*y) = -kx1/kx2*k2 auf die erste Gleichung drauf. Dadurch ist kx1=0 jetzt und wenn der neue Koeffizient ky1 jetzt 0 ist, ist die Gleichung nicht eindeutig lösbar (unendlich viele Lösungen in diesem Fall). Sonst brauchst du nur die Konstante 1 nur noch durch k1yneu dividieren und hast deine Lösung für y.

    Dann deine Ergebnisse auf Ganzzahlig etc. überprüfen.

    Eingabe/Ausgabe entweder durch fread/freadline/fprintf oder cin/cout (<-- Einfacher).

    Wie schaut's denn eigentlich aus wenn ein Element gelöscht wird und wieder später eingefügt wird? Ist dieses als neues Element (Event) zu behandeln (sprich letztes in der Ordnung)? Sonst, wird's relativ schwierig.

    Naja, eine Alternative wären vllt. noch Skiplisten um die Ordnung abzuspeichern (mehr Speicher).

    Sonst könntest du dir die separat in einer double linked List speichern. Die Hashmap hat den key + Eintrag in der Liste. Wenn du aus den Pointern ablesen kannst ob es vorher oder nachher eingefügt wurde passt's. Sonst hast du die gleichen Probs wie vorher.

    Alternativ könnte man versuchen die Ordnung in einen Binärbaum abzubilden, wobei der "idx" in diesem Fall die Entscheidung gibt ob ein Knoten links
    oder rechts hin kommt. Nachteil: Man sollte den Baum balanced halten (Einfügen / Löschen)

    Ich würde sagen, je nach Konfiguration der Rechner :P (Routing-Tabelle, Protocol-Stack, Firewall), können sie Kommunizieren oder nicht.

    Da die Frage aber wahrscheinlich eher die unterschiedlichen Netze meint, solltest du diese überprüfen. Denn Default können unterschiedliche Netze nur über einen Router kommunizieren.
    Aber den Rest solltest du schon selbst aus deinen Unterlagen/Internet suchen.

    Alternativ hilft auch ein wenig Spielen mit genau eben so einer Konfiguration. Da lernst gleich wie man so etwas konfiguriert. Das muss auch nicht physikalisch genau so aufgebaut sein (virtuelle interfaces).

    Also du möchtest Netzwerke und Adressen vergeben und keine Routingtablle berechnen (dafür gibt's dynamische Algorithmen und statisches Routing).
    15 Clients + Netzadresse + Broadcastadresse + Router = 18 Adressen, nächst größere 2er Potenz = 32. Zwischen den Routern, wirst du wahrscheinlich nur
    4 adressen (2 Router + Netzadresse + BC-Adresse) brauchen. Wären es nur <8 <=16 Adressen sin Summe dann würde 16 ausreichen.

    Das hängt eben mit der Subnetzmaske zusammen, die verwendet wird um aus einer gebenen IP-Adresse des Netzes den Netzteil zu extrahieren:

    z.B.: 172.16.24.4/30 (Subnetzmaske 255.255.255.252). Hier fehlen die unteren zwei Bit, was angibt, dass eben 4 adressen in dem Netz verfügbar sind (Net+BC+2 Client Adressen).
    Wenn man eben ein Subnetz kleinst möglichst wählen soll, muss man die Subnetzadresse so klein wählen, dass alle Adressen hineinpassen und da ein Bit
    des Subnetzes nur entweder zur Netzadresse oder zur Hostadresse (Clientadresse) gehören kann , muss man die nächste 2er Potzen an wählen.
    Die Subnetzmaske oben sieht in Bitstruktur eben so aus:

    11111111 11111111 11111111 111111100

    Die 1er markieren die Stellen der IP-Adresse (32-Bit) welche zur (Sub)Netzadresse gehören und die 0er welche zur Hostadresse. Diese sind immer durchgängig ausgelegt, also nicht sowas wie 110111111. Die Subnetzadresse kann auch in CIDR darstellung angeben werden (Anzahl an 1er).

    Wenn CIDR = 30-> 2^(32-30) = Anzahl adressen im Subnetz. Die Subnetzadresse ist immer die erste Adresse und die BC die Letzte.

    Eine Möglichkeit wäre (Netzadressen mit CIDR):
    172.16.24.0/30 1. Router Netz
    172.16.24.4/30 2. Router Netz
    172.16.24.8/30 3. Router Netz
    172.16.24.32/27 1. Client Netz
    172.16.24.64/27 2. Client Netz

    Die Ip Adressen für die Router könnten dann z.B. so aussehen:
    172.16.24.1, 172.16.24.2 erste Router Netz
    172.16.24.5, 172.16.24.6 zweites Router Netz
    172.16.24.33 für Router im 1. Client Netz (rest für Clients),...

    Manchmal ist es sinnvoller aufsteigend (wie hier) nach Größe der Netze zu vergeben oder umgekehrt.
    Hier ist der Vorteil, wenn ich noch einige Netze vergrößern oder vorher hineinpacken möchte, verschieben sich nicht gleich alle nachfolgenden. Es
    verschwendet typischerweise eben mehr Adressen. Ist halt Geschmackssache. Natürlich kann man auch Reserven einplanen in dem man Bereiche danach freilässt.

    Wobei es manchmal Router auch im selben Netz hängen können. Manchmal kann man auch je nach PHY tricksen in dem man bei den Routern nur Netz und broadcast verwendet, da es P2P Links sind.

    Falls noch atkuell:

    Ich könnte mir vostellen, dass es sich um ein Tool (Antivirenprogramm) oder eben Windows Updates oder so handelt. Priznipiell etwas das mit Treibern oder Systemdatein herumhandelt, da sonst eigentlich nie ein Neustart erforderlich ist.

    Müsste also irgendwas sein, was ihr erst vor kurzem installiert habt, da es ja auch seit kurzem Auftritt.

    Wenn die Frage "Wurde ein neues Programm/Tool/Version eines Programms oder sind alle Windoes Updates/deaktiviert installiert, welches vermehrt solche Updates durchführt?" definitiv mit Nein beantwortet werden kann, handelt es sich möglicherweise auch um eine bösartige Software.

    Nach ein wenig googlen ("windows log api calls")

    Habe ich diese Forum posts gefunden: http://www.openrce.org/forums/posts/274

    Detours von MS Research hört sich interessant an. Da müsstest du, dann aber einen eigenen Logger schreiben und über die Windoes API den caller abfragen.

    Wie gesagt neu erfunden haben sie es ja nicht. Ich gluabe es gab sogar ein paar Demos von den Grafikkartenherstellern vor ein paar Jahren (2007? war in der CT). Da war wieder mal ein Voxel Hype.
    Auch Outcast benutzte Voxels (vllt. nicht überall) und lief rein auf der CPU, falls ich mich nicht täusche. Je nach Rechenleistung konnte man bis auf 480x240 gehen und die Grafik war für damals ein Wahnsinn.
    Auch die Animationen wahren nicht so schlecht (aber wie gesagt, kann sein dass die Charaktere Poly. basierend waren).

    Außerdem darf man sich von den genannten Punktzahlen nicht überwältigen lassen. Da nur ein Bruchteil dargestellt wird und die Suche, wenn ich mich richtig erinnere, bei Voxel (Raycasting oder tracing) relativ einfach gemacht
    werden kann und im Großen und Ganzen effizienter ist als bei den konventionellen Verfahren. Im konventionellen Verfahren werden oft auch Polygone gezeichnet/verarbeitet die später gar nicht sichtbar sind. Bei Voxel kann man es so trimmen, dass dies weitgehend nicht vorkommt. Zusätzlich haben sie ja immer sich wiederholende Objekte. D.h. die ach so vielen Punkte die im Speicher gehalten oder gemanaged werden müssen, sind doch nicht so viele.
    Gibt es ja mittlerweile auch seit DX10 (Geometry Instancing oder so).

    http://www.pcgameshardware.de/aid,657641/Rub…afikkarte/News/

    Das Problem bei der Animation/Physik ist, glaube ich, dass neue Punktmengen generiert werden müssen. Das bedeudet: Schluss mit gleichen Bäumen oder Objekten. Da muss man dann schon tricksen, da die Daten nicht mehr gleich sind. Außerdem müssten sie dann genau diese Menge an Daten verarbeiten.

    Ich glaube die Zukunft ist eine Mischform aus beiden. Mathematisch einfach handhabbare Polygone (Charaktere, ...) + einfach darzustellende Voxel (Partikel Effekte, Landschaft, Wassereffekte).
    Es ist halt wie bei Texturen, Videos oder Bildern je weiter man hineinzoomt desto pixeliger wird es --> noch mehr Punkte.

    MMn sollte alles in zur Laufzeit generierte Objekte übergehen (prozedural), wie es bei Texturen schon immer mehr versucht wird. Nur ist das nicht gerade einfach.

    Ob sie auch das Problem der Animation und Physik zufriedenstellend in Echtzeit lösen können wird sich zeigen und man darf gespannt sein.

    Hmm, ich weiß noch immer nicht wie das effizient mit den Datenstrukturen gehen soll. Ich bin aber auch kein Experte in der Grafikthematik. Ich weiß was Voxel sind und wie sie typisch verarbeitet werden. Auch die Grafikindustrie (Nvidia, AMD, id) haben diesen Ansatz vor ein paar Jahren wieder aufgegriffen (Outcast war ja damals schon Voxel basiert). Aber effiziente Suchstrukturen bauen ist nicht gerade einfach, vor allem das sich die Blickrichtung ja dauernd ändert.

    Er erwähnt auch medizinische Anwendungen, nur ist das auch meistens ohne gute HW sau langsam (Raycasting und Tracing ist halt nicht schnell). Außerdem sind Animationen/Physik angeblich mit Voxeln nicht gerade einfach (Löcher)

    Vor allem Mrd Punkte. D.h. wenn andere Objekte diese verdecken und die im Blickfeld liegen dürfen diese nicht gezeichnet werden. Sonst überfordert das jeden Proc. Die Sichtbarkeitstests brauchen auch sehr gute Suchstrukturen (Verdeckung). Das Voxel aber an sich effizienter zu zeichnen sind, haben ja auch die Industriegrößen zugeben.

    Bin gespannt.

    Hm, bei mir hat das .bat file nicht kompiliert, da es den -inline param nicht kennt--> entfernt. compilation geglückt. test_mex hat funktioniert und ein paar modifizierte frodo beutlin bidler gezeigt. (2010b)

    Routing: Vermitteln von Paketen zwischen verschiedenen Netzen.
    Wobei ein Netz durch seine Klasse und/oder Subnetzmaske identifiziert wird.
    Bsp.:192.168.0.0 /24 und 192.168.1.0/24 sind verschiedene Netze.
    Damit diese beiden miteinander kommunizieren können braucht es einen Router.

    Manche Geräte besitzen mehrere Interface und können somit in verschiedene Netze direkt angeschlossen sein (oder eben mehrfach im selben). Wobei jetzt ein Interface eben physikalisch sein kann (NIC) oder eben virtuell (VPN).

    Windows nimmst, soweit ich weiß, immer den zuletzt zugewiesenen Standardrouter (Default Gateway) um mit dem Internet zu kommunizieren. Wenn jetzt dein PPTP Server (wahrscheinlich auch DHCP Server oder fix eingestellt) eine Adresse vergibt, setzt entweder der Client den PPTP-Server als Default Router oder du bekommst diesen zugewiesen. Wenn der Client nun diesen auf das NAS setzt und da Routing abgedreht ist, dann kommst du nicht ins INET oder andere (lokale) Netze die von dort aus erreichbar sind. Bzw. Pakete die nicht an den Server gerichtet sind wird es auch nicht versuchen weiterzuleiten (drop).

    Nicht zu verwechseln mit NAT/PAT.

    Du solltest aufjedenfall sicherstellen, dass dies nur für das PPTP Interface gilt. Aber da du wahrscheinlich hinter einer Firewall/Router mit NAT/PAT bist, ist es eigentlich egal.

    Ich nehme mal an das liegt daran, dass keine Broadcast/Multicast (Rundsendung an alle/einige ereichbaren Geräte im Netz) über PPTP möglich ist. Das wird aber DLNA wahrscheinlich brauchen um alleine die Geräte zu finden. Eventuell ist es möglich, auf diese manuell per IP oder hostnamen zuzugreifen. Ich nehme mal an das der Zugriff aufs NAS per PPTP gelingt oder?

    Verbindet sich jedes Gerät separat per PPTP mit dem NAS oder hast du im anderen Netz einen Router/Server der diesen aufbaut? In diesem Fall ist das Problem, dass die Broadcasts nicht
    über Netzwerkgrenzen hinweg gehen, also Broadcast von 192.168.0.0/24->192.168.1.0/24 gehen nicht, da diese von einem Router gefiltert werden. Ist auch der Unterschied zwischen einem (gerouteten) (Sub)Netz und einem geswitchtem Netz.

    Um zu überprüfen ob ein Broadcast über PPTP funktioniert kannst du einfach mal ein paar Geräte in dem DLNA-Netz einschalten (Computer/NAS,...), vorher lokal ausprobieren welche auf so einen Ping antworten, und einen broadcast ping (zb mit hping) loslassen. Default antworten moderne Betriebssysteme (zb ab XP SP3) nicht mehr auf solch einen ICMP (Ping) request.

    Wenn du aber weißt auf welchen Port und welches Protokol (UDP wahrscheinlich) für die Diskovery benutzt wird, könntest du mit hping eine UDP anfrage eben so stellen und schauen ob du eine Antwort erhältst.

    Alternative: Ich weiß jetzt nichtz ob Wireshark auch PPTP snifft, aber wenn ja einfach mal schauen ob dein Gerät antworten aus dem Gewünschten Netz erhält auf seine DLNA Suchanfrage.

    Es gibt aber alternative Tunnellösungen (zb OpenVPN) die solche Rundrufe durchlassen. Wenn du das auf deinem NAS installieren kannst und sich PPTP nicht dazu bewegen lässt diese Rundrufe durchzuleiten oder du mit dem manuellen nicht zufrieden bist, steig halt auf so eine Lösung um.

    Ok, erkläre bitte genau was du erreichen möchtest.

    Vorab: Funktioniert das Streamen schon? Kann irgend ein fähiges Gerät diese Streams anzeigen?
    Manche Geräte stellen auch einfach nur die Dateien im Netz bereit und der Player muss diese selbst verarbeiten und natürlich eben die jeweiligen Formate verstehen. Eben wie bei einem normalen Netzlaufwerk, nur eben über DNLA.

    DLNA-Cnet(2009)

    Ich nehme mal an, dass du mit PPTP von außen auf dein Netz zugreifen möchtest. Dann muss aber Router eben diese Protokoll an deinen NAS oder PPTP-Server forwarden.


    PPTP=Point-to-Point-Tunneling-Protocol

    Wenn dein Fernseher/Player bestimmte Formate eben auf deinem NAS nicht unterstüzt, bleibt die entweder wirklich nur ein Streaming-Server mit instant Konvertierung (<) oder eben die Konvertierung dieser Datein in Format, welches dein Fernseher/Player unterstüzt. Versuche halt eines zu wählen, dass möglichst auf dem selben Ausgangsniveau ist. Also nicht einen MPEG4 --> MPEG2 konvertieren.

    mfg

    ich habe bfbc2, l4d2, metro 2033, dragon age, crysis 2, etc. in 1650x1050 in vollen Details mit einem Q6600, 4GB DDR2 800 und einer AMD 6950 gespielt.

    Falls du einige wissenschaftliche Anwendungen brauchst die nur CUDA unterstützen, rate ich zu einer NVidia. Andernfalls ist es eine reine Geschmackssache, wobei bei AMD das Preis/Leistungsverhältnis schon sehr gut ist.
    Auch sind die OpenGL 3-4 Treiber von AMD momentan (besonders bei Tesselation) nicht ausgereift, zumindest bei den Consumerprodukten.

    Kommt mir auch ein wenig strange vor. Vor alllem müsste er hingegen die "Suchstruktur" mit jedem Bild verändern oder gar neu aufbauen. Ray-Tracing/Casting ist ja selbst schon suchbasiert (intersectiontests).

    Bsp: wenn ich ein spiegelndes objekt in der mitte der umgebung plfanze (zb Kugel), dann bringt eine Datenstruktur bei der Suche auch nicht viel wenn sich die Objekte nicht überdecken, da jedes Objekt möglicherweise
    in der Reflektion zu sehen ist --> intersection tests. Natürlich kann man die Tests ähnlich wie bei OctTrees/Binäre Suchbäume/andere strukturen optimieren, aber wie gesagt, wenn sich die Kamera und die Objekte bewegen
    müsste die Suchstruktur laufend erneuert werden.

    Wenn er von Voxel spricht, dann ist dass ein alter Hut. Wenn ich mich nicht täusche, hatte diese Technik damals das Spiel Outcast benutzt. Außerdem wird so etwas in der Medizin schon
    genutzt.

    Also ich bin da skeptisch.