@אבי ההשוואה לא כל כך הוגנת. המוצרים של גוגל נרצחו. של מייקרוסופט מתו מזקנה.
yossiz
-
רשימה יפה של מוצרים שמקרוסופט זנחה במהלך השנים -
עזרה - הפעלת פקודה בשרת@מי-זה אמר בעזרה - הפעלת פקודה בשרת:
אני ניסיתי ועדיין מנסה כל הזמן ללמוד ממדריכים איך לעשות כזה דבר, אבל לא הולך לי
הבעיה שאתה יותר מדי ממוקד ביעד. אתה מנסה לקפוץ ממצב של אי ידיעה כמעט טוטאלית למצב של יכולת לכתוב קוד JS.
אין לי חשק לעזור ככה, ואני גם לא חושב שזה בהכרח לטובתך. (כן, לאחרונה נהייתי יותר עצבני. כנראה אני מזדקן...).
אבל אשמח לעזור לך בהכוונה איך ללכת שלב שלב בצורה מסודרת עד שתדע כבר את התשובה לשאלתך.אם תרצה תגיד. אם לא - חכה למישהו עם יותר סבלנות...
-
קבלת תוכן קוקיז מאתר אחר@ivrtikshoret זה לא יעזור. אם תמצא דרך לעשות את מבוקשך אז א) אתה מחונן, תעשה לעצמך קריירה באבטחת מידע. ב) תדווח לגוגל - תקבל מהם פרס כספי גבוה.
-
עזרה - שינוי שם בקבצי PDF מרובים לפי טקסט מתוך המסמך@מעלה-ומוריד אולי עם קצת מאמץ קבוצתי יוכלו חברי תחומים התותחים למצוא לך פתרון מצויין שתשאיר את חשבון הבנק שלך מעל קו האדום התחתון...
ההתחלה:
- תוכנת
pdftotext
(הורדה). מריצים את זה ככה:
pdftotext -enc UTF-8 -layout source-file.pdf -
הנה קבלנו את התוכן של ה-pdf ל-stdout. (הסברים מה זה stdout במדריך שורת הפקודה שלי...)
-
שלב הבא, נמצא regex ששולף את הטקסט הרצוי
-
נרכיב פקודה שעושה שינוי השם לפי התוצאה של הפקודות הנ"ל.
לפני שנתחיל, בא נחליט באיזה שפה נכתוב את זה?
לכאורה powershell, למישהו יש הצעה טובה יותר?
- תוכנת
-
שני סקריפטים JS שמתנגשים@יוסף-בן-שמעון אמר בשני סקריפטים JS שמתנגשים:
אז אחד מהם דורס את השני.
מה שאפשר לעשות, שהפונקציה האנונימית תקרא לשני הפונקציות הנ"לאפשר גם (מומלץ) להשתמש ב-
addEventListener
שלא דורס.window.addEventListener('scroll', myFunction);
אגב, זה מיותר לעטוף את הפונקציה בעוד פונקציה:
window.onscroll = function() {myFunction()};
כותבים פשוט:
window.onscroll = myFunction;
-
תגובות:קישורים שימושיים ללימוד SQL והמסתעףמתכון
מצרכים
הכרת שפת אנגלית... רצון להבין, חיפושי גוגל, עקשנות, חשיבה ביקורתית, זיקה מולדת לנושאים טכניים, זמן
הכנה
מערבלים היטב כ-10+ שנים
-
מה זה ט'רד (thread)?@nigun אמר במה זה ט'רד (thread)?:
יש את התהליך הראשי הנקרא Process
שזה בעצם מידע שנשמר בכתובת בזיכרון על הפעולהתהליך הוא הרבה יותר מרק "מידע בזכרון". (כמו שלא היית מגדיר "מתכנת" כ"גוש בשר"...) אני מתקשה להגדיר בעברית מה זה תהליך. אבל זה ישות אבסטרקטי שמאופיין על ידי מקבץ של כמה דברים שהבולטים מביניהם הוא לפחות "קונטקסט ריצה" אחד (thread בלע"ז), מרחב זיכרון פרטי, ו"תור" אצל המעבד.
יש הבדל השקפתי יסודי בין לינוקס לווינדוס בנושא הגדרתו של "תהליך". בווינדוס התהליך הוא ישות אבסטרקטי לעצמו שכולל בתוכו לפחות thread אחד, אבל התהליך הוא לא ה-thread בעצמו אלא הבעלים שלו. בלינוקס אין שום הבדל בין תהליך ל-thread. thread הוא רק מופע מיוחד של תהליך שמשתף כמה ממאפייניו עם תהליכים/threads אחרים. (כאן מופיע rant אופייני של לינוס טורבלדס בנושא)
דוגמה קונקרטית להבדל הוא שבווינדוס גם תהליך בעל thread אחד יש לו 2 מזהים - מזהה התהליך - PID ומזהה ה-thread - TID. לעומת זאת בלינוקס יש רק מזהה אחד, ה-PID.כדי להבין לאשורו את הענין של threads וההבדל בין thread לתהליך, כדאי להכיר את הענין של מיפוי ובידוד הזכרון המכונה virtual memory בלע"ז.
מרחב הזכרון הפיזי של המחשב הוא ה-RAM. אם יש לך 2 ג"ב של ראם אז מרחב הזכרון הפיזי משתרע על פני הכתובות מ-0 עד 1073741823. ה-CPU יכול לגשת לכל בייט ממרחב זיכרון זה.
בימים הקסומים של DOS היו תהליכים ניגשים ישירות לכתובות ב-RAM.
זה מודל בעייתי ביותר כאשר יש ריבוי תהליכים (ב-DOS לא היו ריבוי תהליכים במובן הרגיל).
א. זה מחייב כל תהליך לשמור על עצמו מלדרוס על הרגליים של השני. דהיינו לבדוק איזה כתובות תפוסות על ידי תהליכים אחרים ולא לגעת בהם.
ב. תהליך זדוני יכול בזדון לגשת לזכרון של השניכדי לאפשר את עניין ריבוי התהליכים בנוחות ובביטחון, הוחלט שבמצב רגיל ה-CPU לא ניגש ישר לכתובת זכרון בראם אלא כל גישה לזיכרון עובר תהליך מיפוי מכתובת ווירטואלי לכתובת פיזי. זה מאפשר בידוד תהליכים.
היתרון בזה הוא שבמקום שכל תהליך יצטרך לשמור על עצמו מלדרוס על הרגליים של השני, מערכת ההפעלה פשוט יגדיר עבור התהליך מפה שבו יש לו גישה לכל מרחב הזכרון האפשרי שה-CPU תומך בו (לא משנה כמה RAM באמת יש), ומאחורי הקלעים זה ימופה לכתובות פיזיות בצורה בטוחה שתהליך לא יכול לגשת לזכרון של תהליך שני. (אני מקצר קצת בתיאור של כל הפרטים של virtual memory ו-memory protection).
האמת היא שלמרות שלתהליך יש גישה לכל מרחב הזכרון, אבל בפועל זה מחולק ל-2 חלקים. חלק א זמין למתכנת וזה נקרא user space והחלק השני לא זמין למתכנת אלא למערכת ההפעלה (שפועל עבור התהליך בתוך ה-execution context של התהליך). זה ה-kernel space. החלק של ה-user space מבודד לכל תהליך בפני עצמו, כלומר מערכת ההפעלה ממפה את הכתובות לכל תהליך לאיזור נפרד של הראם הפיזי. החלק של הקרנל הוא אותו דבר לכל תהליך, כלומר זה ממופה על ידי מערכת ההפעלה לאותם כתובות פיזיות לכל תהליך.
לאור הנ"ל אכתוב את יתר הערותי:
הוא מכיל מידע כמו הID של התהליך ,העדיפות של התהליך ,ואת כל הפקודות ששייכות לתהליך ועוד
הדברים האלו לא מאוחסנים באותו מרחב זיכרון. ה-ID ושאר המטה דאטה שקשורים לתהליך מנוהלים לגמרי על ידי מערכת ההפעלה וזה נשמר במבנה בתוך מרחב הזכרון של הקרנל, הגישה אליו למתכנת הוא רק דרך ממשקים שמערכת ההפעלה מספקת (system calls בלע"ז).
בשונה מה"פקודות ששייכות לתהליך" (כלומר הקוד - הבינארי, לא קוד המקור - של התהליך) שזה ממופה לאיזור היוזר של התהליך.והמעבד עובר על הפקודות שורה אחרי שורה ומבצע אותם.
כמובן שיש גם קפיצות ולולאות...
אבל בשונה מהתהליך הראשי הוא יכול להתשמש במשתנים הנמצאים בט'רד השכן
מה שנקרא שהוא משתף באותו מרחב זכרון ווירטואלי של התהליך האבא (אותו מיפוי של כתובות לוגיות לפיזיים)
אם יש כמה פעולות מכמה תהליכים מקבילים נוצר תור אצל המעבד
במקרה שיש רק מעבד אחד, או שיש יותר תהליכים מליבות עיבוד
@nigun אמר במה זה ט'רד (thread)?:
(לא יודע איך הוא מנהל את העדיפות בין הט'רדים)
בברירת מחדל (אאל"ט) thread בתוך תהליך מנוהל על ידי ה-scheduler בדיוק כמו תהליך נפרד. ווינדוס מגדירים את ה-thread כה-"Basic scheduling unit". כלומר ניהול התור לא מתייחס בכלל לתהליכים רק ל-thread-ים.
-
שאלה בפיזיקהאחרי כל ההתנצלויות שלא פיזיקאי אני ולא בן פזיקאי וכו'
"צפיפות" = היחס של כובד לנפח
כדי שמשהו יצוף על גבי מים הוא חייב צפיפות נמוכה מהמים, אז ברור שהצפיפות של עץ פחות מזה של מים
בד"כ, חומר ספציפי תמיד פחות צפוף במצב נוזלי מאשר במצב מוצק. מים הוא יוצא מן הכלל, כי כידוע קרח צף על פני המים.
אבל אין כלל שאומר שכל נוזל פחות צפוף מכל מוצקהתורמים ל"צפיפות" החומר הם: א) הכובד של האטומים שמרכיבים אותו (ככל שמתקדמים בטבלה המחזורית כך האטומים נהיים יותר כבדים) ב) הצפיפות של המולקולות (= קבוצה של אטומים שמתחברים ביחד) בעצם המדובר.
למרות שאטומי פחמן ושאר המרכיבים של עץ הם יותר כבדים מהאטומים שמרכיבים מים, אבל עץ ביחס למים הוא עצם הרבה הרבה יותר מורכב, יש מבנים נפלאים בכל תא, והתאים מחוברים בצורה מסודרת, לא קשה לדמיין שיש הרבה רווחים בתוך התאים ובינם, מים לעומת הוא פשוט מאוד אוסף של מולוקולות, אין תאים ואין מבנים ולא כלום
עריכה: היה לי טעות, המסה של פחמן 3/4 מהמסה של חמצן, אבל חמצן הוא רק שליש מנפח המים ופחמן הוא חצי הנפח של עץ, אז לכו תעשו חישוב...
אגב, לפעמים עץ יכול לטבוע, לא כל עץ צף
-
חידה | לבעלי חוש תיכנותשיחליף איתי כי אני מועף...
@שואף אמר בחידה | לבעלי חוש תיכנות:
חברים בפורום תיכנות שלא פותרים, עפים מהפורום... ( @dovid )
-
GHIDRA: תוכנת קוד פתוח מאת ה-NSA האמריקנייצויין שזה לא הפרוייקט הראשון בקוד פתוח של ה-NSA, יש עוד המון כאשר הבולט מביניהם הוא Selinux.
למי שמתעניין, יש עוד כמה תוכנות חינמיות שעוזרים בהנדסה לאחור.
- dnspy (דיקומפליזציה כמעט מושלמת של דוטנט)
- JD-Gui (דהקומפליזציה של JAVA - נ"ל שזה לא מעודכן עבור הגירסאות האחרונות של השפה)
- jadx (דהקומפליזציה של אפליקציות אנדראויד)
- Radare2 (דיסאסמבלי וניתוח של קוד מכונה עבור כמה וכמה ארכיטקטורות, כולל יכולות סקריפטינג, כלי די עוצמתי)
- IDA Freeware - (דיסאסמבלי וניתוח עבור קוד מכונה x64 בלבד. יש משהו יותר ישן עבור x86 בלבד)
- ht - (דיסאסמבלי וניתוח של קוד x86 ו-x32)
כלים לזיהוי קבצים
- Die - (מזהה בעיקר תוכנות, יכול לזהות שפות, לפעמים אפילו גירסת קומפיילר, מגינים למיניהם, סוגי אובפסקיזציה, ניתן להרחבה ע"י סקריפטים)
- binwalk - (סקריפט פייתון, טוב בעיקר עבור זיהוי קבצים מוטמעים בקושחות)
- De4dot - זיהוי והשבה לאחור של אובפסקציה
אופסס.. שחכתי לציין הכלי העוצמתי והזמין ביותר - Hex Editor + מסמכי התיעוד של המעבד + המוח האנושי
-
GHIDRA: תוכנת קוד פתוח מאת ה-NSA האמריקניבשורה ענקית עבור אלה שמתעסקים בהנדסה לאחור של תוכנות. (חוקרי אבטחה, האקרים, סתם סקרנים, ועוד...).
ה-NSA האמריקני (זרוע הסייבר של המדינה) שיחרר לאחרונה כלי שעד עכשיו היה רק בשימוש פנימי בארגון. הכלי הוא פלטפורמה להנדסה לאחור של תוכנות, נכתב בג'אווה, והוא כולל גרעין ופלאגינים לכל מיני ארכיטקטורות, כולל יכולת של דיקומפליזציה של קוד מכונה ל-C עבור כמה ארכיטקטורות, ויכולת סקריפטינג. בקיצור ארגז כלים עוצמתי ביותר.
הכלי שהוא קוד פתוח וחינמי, הוא המתחרה הראשון הרציני ל-IDA PRO, שעד עכשיו היה בלי שום מתחרים רציניים (יש עוד כמה תוכנות שלא מגיעים לקרסוליים שלו). (לשם השוואה, רשיון למחשב אחד עבור תוכנת IDA PRO - כולל פלאגינים לדיקומפליזציה עבור 5 ארכיטקטורות - נמכר נכון לעכשיו במחיר ההזוי של $15,024, וגם לא מוכרים בכלל לסתם אנשים, גם אם תבקש לשלם, רוב הסיכויים שלא יסכימו למכור לך).
-
משחק לא נפתח@ג-י-מ ו@כולם
אני לא מתכוון אליכם או למישהו מסויים אבל אני חושב שזה דבר שצריך להיאמר. אני יודע שאני ממש לא האדם המתאים להטיף, אבל הדברים כשלעצמם צריכים להיאמריש לאחרונה קצת (הרבה) הפקרות בנושא משחקי מחשב
גם אם נגיד שזה לא כל כך גרוע, אבל לדבר על זה בפרסום עושה רושם על אנשים שזה לכתחילה
צריך להיאמר שכל דבר שמגיע מהגויים הוא בחזקת שיש לו השפעה שלילית על יהודים. ובפרט דבר שקשור לבידור ופנאי. כל אחד צריך לחשוב לעצמו פעמיים (או מאה פעמים) לפני שהוא מקרר את האמבטיה בנושא זה עוד. -
תוכנה לשליטה על נטסטיק של Huaweiלאלה מביננו שמשתמשים בנטסטיק הפופולארי של Huawei,
ולאלה שכמוני לא אוהבים את ממשק ההגדרות (אני הולך לשם מפעם לפעם, א. כדי לראות כמה השתמשתי מהחבילה החודשית. ב. כדי לקרוא סמסים ג. כדי לראות מה מצב הקליטה)
מצאתי תוכנה חילופית: https://www.microsoft.com/en-us/p/huwimanage/9pd4n9pvhj9v?activetab=pivot:overviewtab
זה ממשק יפה, התלונה היחידה שיש לי עליו בינתיים שהוא לא מראה נתונים כמה השתמשת בחודש זה, רק כמה השתמשת בחיבור הנוכחי וכמה השתמשת מבריאת העולם עד עכשיו...עריכה: עוד תלונה: אי אפשר להעתיק טקסט של SMS, דבר נחוץ עבור SMS אימות
-
זיהוי אופטורי גודל באקסל@מתמחה-במחשבים
לא כל כך הבנתי את הבעיה שלך, אז נעשה פה קצת סדר, ואני אסביר בדיוק את התנהגות אקסל בנוגע לכיווני ה</>, אם אח"כ יש לך עדיין בעיה, תשאל שוב.הקדמה
כאשר מדברים על טקסט, יש להבחין בין התוכן הלוגי לבין הייצוג החזותי.
התוכן הלוגי מורכב ממספרים, כאשר כל מספר מייצג תו אחר,
הייצוג החזותי, מורכב מצורות שונות שרואים על המסך
לדוגמה, אתה יכול לראות על המסךבּבּ
וזה נראה לך כמו 2 תווים - פעמיים בי"ת דגושה. אבל זה הייצוג החזותי, אבל מבחינת התוכן הלוגי יש כאן שלוש תווים, 1. בי"ת רפה 2. דגש 3. בי"ת דגושה. (תבדוק...)ובחזרה לעניננו,
יש לכל אחד על המקלדת 2 כפתורים
1.
2.
(מעכשיו נקרא לתמונה הראשונה "כפתור1" ולשניה "כפתור2", אני בדוקא משתמש במספרים ותמונות כדי למנוע בלבולים, כמו שנראה בהמשך)
יש גם 2 תווים שכפתורים אלו מייצגים.
התווים האלו יש להם את המספרים: 60 ו-62 (זה במספרים רגילים, ובמספרים הקסדצימליים:3C
ו-3E
)איזה תו שייך לכל כפתור?
אז ככה,
כאשר המקלדת בשפה עם כיוון ימין לשמאל (RTL), אז "כפתור1" מקליד את התו שערכו 60 ו"כפתור2" מקליד את התו שמספרו 62.
מאידך, כאשר המקלדת במצב LTR (שפה שכיוונו שמאל לימין) אז המצב הפוך, "כפתור1" מקליד את התו שערכו 62 ו"כפתור2" מקליד את התו שמספרו 60.עד כאן דיברנו על התוכן הלוגי שהכפתור מקליד.
ואיך נראה הייצוג החזותי של כל אחד מתווים אלו?
עכשיו הדברים מסתבכים קצת...
זה שוב תלוי...אם התווים מוצגים בקטע שכיוונו RTL (ימין לשמאל) אז התו שמספרו 60 נראה כך:
<
והתו שמספרו 62 נראה כך:
>
אם, אבל, מדובר בקטע שכיוונו משמאל לימין, אז המצב בדיוק הפוך...
התו שמספרו 60 נראה כך:
>
והתו שמספרו 62 נראה כך:
<
עכשיו,
מה קובע את כיוון הקטע?
אז ככה,
אין כללים ברורים בזה.
יש תוכנות כמו וורד ששמים את הכיוון במאפיין של הקטע, לכל קטע יש כיוון מפורש לפי כללים מסויימים, כמו שפת המקלדת, ושפת ברירת המחדל של התוכנה.
יש מאידך תוכנות כמו notepad של ווינדוס (כתבן) שזו הגדרה בתוכנה - או שהוא מציג את כל הקטעים כ-RTL או כ-LTR
ויש תוכנות שזה הולך לפי התו הראשון בקטע שיש לו כיוון ברור. כלומר, ישנם תווים ניטרליים (פסיקים ונקודה ורווחים וכו') שאין להם כיוון ברור, ויש תווים (כמו אותיות עבריות) שיש להם כיוון RTL, ואותיות אנגליות שיש להם כוון LTR, אז התו הראשון שיש לו כיוון ברור קובע את הכיוון של כל הקטעעכשיו, איך אקסל מתנהג?
אז ככה,
יש מאפיין לכל תא שקובע איך הוא יתנהג,
ויש שלוש אופציות:- תמיד ימין לשמאל
- תמיד שמאל לימין
- לפי התו הראשון שיש לו כיוון ברור
השליטה על מאפיין זה של התא הוא בלחיצה על לחצן זה:
דו"ק ותשכח שלפי זה מובן היטב התנהגות אקסל בכל נושא זה.
-
מי עוד משתגע מהתנהגות כרום לגבי טקסט bidi?לאור הצלחתו - שעלה על כל הצפיות - של האתגר מאתמול, אני מתכבד להעלות אתגר 2:
הוראות:
- דפדפן כרום.
- תעשו קליק כפול או על המילה הראשונה בקטע או על האחרונה. זה אמור לסמן את כל המילה.
- תשאירו את העכבר לחוץ.
- עכשיו תעבירו את העכבר לימין או לשמאל עד הקצה השני של הקטע בכדי לבחור את כל הקטע.
- תראו איך כרום מתנהג כשיכור.
- גם אם מתחילים באמצע הקטע, אם ממשיכים עד ההתחלה או הסוף יש בעיה.
- למקסימום הנאה מהמוצר, תוודאו שהחלון מספיק רחב שכל הקטע הוא על שורה אחת.
- לבונוס הנאה, תמשיכו להעביר לימין ולשמאל מקצה לקצה עד שהמחשב שלכם יתחיל להראות סימנים מדאיגים...
עכשיו תגידו: יש להם בעיה, לא?
למי שמתעניין יש עוד משהו קטן בקוד המקור... (רק למשתמשי נטפרי), ( @dovid האם ניתן לטעון עכשיו שנטפרי הם לא כל כך אלופים ב"זיהוי מבנים בפרזנטציות"? לפחות מבנים לא חוקיים...)
-
תוכנה לת"ת לאיסוף בפוריםאני מחפש תוכנה שיאסוף בשבילי כל השנה...
(אולי רק אני מטומטם שלא הבנתי מה אתה מחפש?...)
-
צריכה גבוהה ושימוש במעבד של COM Surrogate - dllhost.exeהבעיה היא שרק שם התהליך "COM Surrogate - dllhost.exe" פה הוא לא מספיק מידע, כי זה תהליך שמארח תהליכים אחרים. המידע שצריך פה הוא מי הוא האורח המרעיש
בפעם הבא שזה קורה, אתה יכול לבדוק עם תוכנת https://systeminformer.com
כאשר מרחפים עם העכבר על השורה של תהליך dllhost הוא אמור להראות לך בטולטיפ משהו על האורח -
חלום \ אתגר | זיהוי ראשי תיבות של סימני מקורות בקבצי וורד@אוריי כתב בחלום \ אתגר | זיהוי ראשי תיבות של סימני מקורות בקבצי וורד:
עלה לי כעת עוד מחשבה ע"פ מש"כ @קומפיונט
שאני יכול ליצור קוד שיחזיר לי את כל הר"ת בכל המסמכים לתוך טבלת אקסל, ופשוט לעבור אחד אחד ולחלק ל3 קטגוריות- צריך להשאיר.
- ודאי למחוק.
- ספק.
לאחר מכן על הספק לעשות בדיקה איזו מילה יש לו לפני
בדיוק רציתי לכתוב כעין הרעיון הזה
תכתוב קוד עם כמה חיפושים, ותפצל אותם לשתי רמות:
- חיפושים שמוצאים לך מילים שבסבירות גבוהה/גבוהה מאוד שהם מספרים
- ספקות - חיפושים שמוצאים לך מועמדים אפשריים, דברים שצריך בינה אנושית או מלאכותית ולראות את ההקשר כדי להחליט
לפני שאתה עושה את ההחלפות בפועל, תעתיק את המילים שמצאת עם ההקשר (המילים שלפני/אחרי) לתוך רשימה שתוכל לסקור בקלות (אפשר קובץ אקסל או סתם רשימת טקסט) כדי שתוכל למצוא את כל מקרי הקצה האפשריים
ברשימה של הקרובים לודאי, העבודה שלך הוא לסנן מתוכם את הזיהויים הלא נכונים שאמורים להיות ספקות,
ברשימה של הספקות יש שתי עבודות, א) לדאוג שמצאת את כל הספקות האפשריים (זה לכאורה לא משהו מאתגר) ב) למצוא דרכים לשפר את החיפוש כך שתוכל להעביר כמה שיותר דברים לרשימה הראשונהתוך כדי העבודה, תתן את הדעת להשקיע הכי הרבה בכללים שיכולים להניב הכי הרבה תוצאות. אם תמצא מקרה קצה שמן הסתם קורה פעם פעמיים בכל הקובץ, תשקיע בזה פחות.
אחרי שיש לך חיפושים טובים לשתי הרשימות תעשה על הרשימה של הקרובים לודאי החלפה גלובלית, ועל הרשימה השניה תוכל לצבוע את כל התוצאות ואז לעבור אחד אחד, או לעבוד על חיפושים יותר חכמים שכל אחד יטפל במקרה קצה אחד ולאט לאט תשפר את התוצאות